進階 · Unit 80

假設語氣 — 如果沒有~、當時如果沒有~

「如果沒有 / 當時如果沒有」用If it were not for / If it had not been for 來表達,也可以換成倒裝形(Were it not for / Had it not been for )和 without / but for 。它是假設某個對象不存在,藉此強調那個對象的重要性。

概念說明

「如果沒有~ / 當時如果沒有~」用If it were not for ~ / If it had not been for ~來表達,也可以換成倒裝形(Were it not for ~ / Had it not been for ~)和 without ~ / but for ~。它是假設某個對象不存在,藉此強調那個對象的重要性。

 

A.  現在沒有的話 — If it were not for / Were it not for / Without / But for 

「現在如果沒有~」這種與現在事實相反的假設,基本上用 If it were not for ~ 句型,也可以換成倒裝形 Were it not for ~ 或 Without ~ / But for ~。後面的主要子句接 would / could / might + 原形動詞。If it were not for = Were it not for = Without = But for

形態正式程度例句
If it were not for標準If it were not for air, we would die.
Were it not for正式、書面Were it not for air, we would die.
Without日常、口語Without air, we would die.
But for正式But for air, we would die.
  • If it were not for coffee, I couldn't wake up. (如果沒有咖啡,我就起不來。)
  • Were it not for your patience, this project would fail. (如果沒有你的耐心,這個專案就會失敗。)
  • Without the internet, life would be very different. (如果沒有網路,生活會非常不一樣。)
  • But for the rain, we could enjoy the picnic. (要不是下雨,我們就可以好好享受野餐了。)

 

B.  過去沒有的話 — If it had not been for / Had it not been for / Without / But for 

「當時如果沒有~」這種與過去事實相反的假設,基本上用 If it had not been for ~ 句型,也可以換成倒裝形 Had it not been for ~ 或 Without ~ / But for ~。主要子句接 would / could / might + have + 過去分詞。If it had not been for = Had it not been for = Without = But for

形態正式程度例句
If it had not been for標準If it had not been for him, I would have quit.
Had it not been for正式、書面Had it not been for him, I would have quit.
Without日常、口語Without him, I would have quit.
But for正式But for him, I would have quit.
  • If it had not been for your advice, I would have made a big mistake. (如果當時沒有你的建議,我就會犯下大錯。)
  • Had it not been for the alarm, I would have overslept. (如果當時沒有鬧鐘,我就會睡過頭。)
  • Without her support, we couldn't have finished the project. (如果當時沒有她的支持,我們就沒辦法完成這個專案。)
  • But for the doctor, he might have died. (要不是那位醫生,他可能就死了。)

 

C.  Without / But for 兩種時態都能用 

Without ~ / But for ~ 的形態和時態無關,所以到底是與現在相反還是與過去相反,只能靠主要子句的助動詞時態來判斷。would + 原形動詞是與現在相反,would have + 過去分詞則是與過去相反。

主要子句的助動詞時態判斷例句
would / could / might + 原形動詞與現在相反Without you, I would be lost.
would / could / might + have + 過去分詞與過去相反Without you, I would have been lost.
  • Without you, my life would be empty. (如果沒有你,我的人生會很空虛。)
  • Without you, my life would have been empty. (如果當時沒有你,我的人生就會很空虛。)
  • But for his help, I couldn't finish the work. (要不是有他的幫忙,我沒辦法完成那份工作。)
  • But for his help, I couldn't have finished the work. (要不是當時有他的幫忙,我就沒辦法完成那份工作。)

重點整理

  1. 1現在沒有的話 = If it were not for = Were it not for = Without = But for,主要子句接 would / could / might + 原形動詞。
  2. 2過去沒有的話 = If it had not been for = Had it not been for = Without = But for,主要子句接 would / could / might + have + 過去分詞。
  3. 3Without 和 But for 與時態無關,到底是與現在相反還是與過去相反,由主要子句的助動詞形態決定。(例: Without you, I would be lost / Without you, I would have been lost)
  4. 4Were it not for 和 Had it not been for 是正式、書面的說法,在會話中 Without 自然得多。But for 雖然正式,但在會話中也常出現。
  5. 5會話中的 If it wasn't for 可以接受,但正式的說法原則上是 If it were not for。不能像 If it had been for 那樣把 not 漏掉。

例句

If it were not for water, nothing could live.
如果沒有水,什麼都活不了。
Were it not for your help, I would fail.
如果沒有你的幫忙,我就會失敗。
Without air, we could not survive.
如果沒有空氣,我們就無法生存。
But for the rain, we could go on a picnic.
要不是下雨,我們就可以去野餐了。
If it were not for coffee, I couldn't wake up.
如果沒有咖啡,我就起不來。
這個單元還有更多例句。註冊後可以看完整內容並聆聽發音。

容易犯的錯誤

If it not were for you, I would fail.
If it were not for you, I would fail.
Had not it been for the map, we would have gotten lost.
Had it not been for the map, we would have gotten lost.
Without your help, I would finished the work.
Without your help, I couldn't have finished the work.
But for his advice, I make a mistake.
But for his advice, I would have made a mistake.
If it weren't for the traffic, we would arrive on time yesterday.
If it had not been for the traffic, we would have arrived on time.
確認你是否真的理解這個概念
讀懂和做對是兩回事。答錯時,AI 會告訴你卡在哪個概念。
免費開始練習