⊙ 籍萬杰
山東省臨沂市費縣第一中學高級教師
虛擬語氣:三種類型與三種特例
⊙ 籍萬杰
山東省臨沂市費縣第一中學高級教師

我們都知道,含有條件句的虛擬語氣是經常出現的考題方向之一。此類虛擬語氣有三種類型,還有三種特例,形式比較復雜,很多同學都覺得其規律很難記,感覺比較頭疼。這里整理了一個小表格,大家可以利用它快速準確地記住這種句型的基本規律。

謂語形式虛擬類型 if 條件句 主句對現在的虛擬 過去時(be要用were) would/should/could/might + v.對將來的虛擬① 一般過去時② were to + v.③ should + v.would/should/could/might + v.對過去的虛擬 過去完成時 would/should/could/might + have done
我們來看看以下的例子加深記憶:
例1(2017年北京卷)
If the new safety system (put) to use, the accident would never have happened.
解析:had been put。句意為:如果新的安全系統投入使用,那場事故就不會發生了。根據句意、句子結構,以及句中的信息would never have happened可知,句中if引導的虛擬條件句是表示對過去的虛擬,應使用過去完成時,此處還要注意使用被動語態。
例2(2014年北京卷)
We (be) back in the hotel now if you didn’t lose the map.
解析:would/could be。句意為:如果你沒弄丟地圖的話,我們現在早就回到旅館了。根據整個語境和now這個提示詞可知,此處表示的是對現在的虛擬,所以主句應使用“would/should/could/might + 動詞原形”形式。

不過,這類題目的難點就在于——含有條件句的虛擬語氣有時并不像上面兩道例題那么完整規范,因此,我們在平時的學習中還需要掌握虛擬語氣的三種特殊情況。事實上,在解決這三種特殊情況時,以上表格的內容依然是適用的,只不過我們在遇到這種題目時就要多一個心眼兒,注意分析上下文,從而判斷主從句應使用哪種謂語形式。
如果在虛擬條件句中含有were、had或should,即可將if省略,然后將were、had或should移至主語前,構成部分倒裝。
例3(2017年江蘇卷)(be) it not for the support of the teachers, the student could not overcome her dif fi culty.
解析:Were。句意為:如果沒有老師們的幫助,這個學生可能就無法克服她的困難了。根據語境和句意可知,此處考查的是虛擬語氣,并且條件句中省略了if,應使用倒裝語序。根據主句中的謂
語動詞could not overcome可知此句為過去時,應將be的過去時were提到句首。
例4(2014年天津卷)
he caught the morning train, he would not have been late for the meeting.

解析:Had。句意為:如果趕上了早班火車,他就不會開會遲到了。通過分析語境和句意可知,本題實際上是一個含有條件狀語從句的虛擬語氣復合句。根據主句謂語動詞would not have been可知,此處表示與過去事實相反,所以條件句中應使用had done形式。當條件句中省略if時,要把had提前,形成部分倒裝。
有時虛擬條件句的動作與主句動作發生的時間不一致,這時動詞的形式應根據它們所表示的時間加以調整。
例5(2016年江蘇卷)
If it _______ (be) for his invitation the other day, I should not be here now.
解析:had not been/hadn’t been。句意為:要不是因為他那天的邀請,我現在就不會在這里了。根據句意可知,本題考查的是混合式虛擬語氣,從句是對過去的虛擬(the other day),而主句則是對現在的虛擬(now),填空處應用過去完成時。
例6(2013年天津卷)
If he had spent more time practising speaking English before, he _______ (be) able to speak it much better now.
解析:would/could be。句意為:如果他以前花更多的時間練口語,現在他就能說得更好了。這是一個混合虛擬條件句,由if引導的條件狀語從句中含有明顯的過去時間狀語before,是與過去事實相反的虛擬語氣,謂語動詞用過去完成時;而主
句中出現的是表示現在的時間狀語now,表示與現在的事實相反,所以應用“would/could/should/might + 動詞原形”形式,根據上下文可知would和could都符合句子的邏輯。


這種情況可以再細分成兩種類型:首先是用連詞otherwise、or、but等對條件進行暗示。
例7(2017年天津卷)
—Do you have Betty’s phone number?
—Yes. Otherwise, I _______ (be) able to reach her yesterday.
解析:wouldn’t/couldn’t have been。句意為:“你有Betty的電話號碼嗎?”“我有,不然我昨天就不可能找到她了。”根據對話的語境可知,此處使用了虛擬語氣。Otherwise暗示了條件,空格處表示對過去的虛擬(yesterday),應使用“would/should/could/might + have done”的形式。
例8(2015年安徽卷)
It is lucky we booked a room, or we_______ (have) nowhere to stay now.
解析:would have。句意為:幸好我們訂了房間,不然我們現在就無處安身了。Or暗示前面的條件,根據now可知這是對現在的虛擬,因此用“would + 動詞原形”的形式。

第二種類型是用but for、without等介詞短語來表示條件。
例9(2015年重慶卷)
Without his wartime experiences, Hemingway_______ (write) his famous novelA Farewell to Arms.
解析:wouldn’t/couldn’t have written。句意為:假如沒有戰時的經歷,海明威就不可能寫出著名的小說《永別了,武器》。Without是個標志性的含蓄條件提示詞,再聯系整個句子,我們不難發現空格處表示的是對過去的虛擬。
例10(2011年江西卷)
We _______ (put) John’s name on the race list yesterday but for his recent injury.
解析:would have put。句意為:若不是因為他最近受傷,我們本該把約翰的名字放進昨天的比賽名單。抓住but for這個暗示,以及yesterday這個時間狀語,我們可以很快判斷出此處是對過去的虛擬,含有遺憾的意味。
籍萬杰

山東省臨沂市費縣第一中學高級教師,縣模范備課組長、優秀班主任;曾獲臨沂市人民政府教學成果二等獎、臨沂市優秀教學成績獎、縣教學特等獎;指導學生多次獲得全國中學生英語能力競賽一等獎,獲山東省優秀教育科研成果一等獎。