虚拟语气表示说话人的主观愿望、猜疑、建议或与事实不符的假设等,而不表示客观存在的事实。虚拟语气是由句中的谓语动词的特殊形式表示出来的。
虚拟语气主要分为与现在事实相反,与过去事实相反以及与将来事实相反三个种类。让我们一一来看下它们的结构和用法吧!
1、表示与现在事实相反的情况
从句:if+主语+动词一般过去时(be动词用were)
主句:主语+ should/would/might/could+do:
eg:if i were you,i would take an umbrella.
如果我是你,我会带把伞。(事实:我不可能是你)
if i knew his telephone number,i would tell you.
如果我知道他的电话号码,我就会告诉你。(事实:不知道)
if i had any money with me,i could lend you some.
如果我带钱了,我就会借给你些。(事实:没有带钱)
2、表示与过去事实相反的情况
从句:if+主语+had+done
主句:主语+should/would/might/could+have done
eg:if i had got there earlier,i should/would have met her.
如果我早到那儿,我就会见到她。(事实:去晚了)
if he had taken my advice,he would not have made such a mistake.
如果他听我的劝告的话,就不会犯这样的错误了。
(事实:没有听我的话)
3、表示与将来事实相反
从句:①if+主语+were to do
②if+主语+should+do
③if+主语+动词一般过去式(be动词用were)
主句:主语+should/would/might/could+do
eg:if she were to be here next monday,i would tell her about the matter.
如果她下周一来这儿的话,我就会告诉她这件事的始末。(事实:来的可能性很小,不可能)
if he should come here tomorrow,i would talk to him.
如果他明天来这儿的话,我就跟他谈谈。(事实:来的可能性很小,不可能)
if there were a heavy snow next sunday,we would go skating.
如果下周日下大雪,我们就去滑冰。(事实:下雪可能性很小,不可能)
除了以上三种主要情况,虚拟语气还有以下几种结构和用法哦。
1、 当从句的谓语动词含有were,should,had时,if可以省略,这时从句要用倒装语序,即把were,should,had等词置于句首,这种多用于书面语。
eg:should he agree to go there,we would send him there.
要是他答应去的话,我们就派他去了。
were she here,she would agree with us.
如果她在这儿的话,她会同意我们的。
had he learnt about computers,we would have hired him to work here.
如果他懂一些电脑知识的话,我们已经聘用他来这里工作了。
2、非真实条件句中的条件从句有时不表达出来,只暗含在副词、介词短语、上下文或其他方式表示出来,这种句子叫做含蓄条件句,在多数情况下,条件会暗含在短语中,如without…,but for…(要不是因为...)等
eg:
but for his help,we would be working now.
要不是他的帮助,我们还会在工作呢。
without your instruction,i would not have made such great progress.
要是没有你的指导,我不会取得如此大的进步。
we didn't know his telephone number,otherwise we would have telephoned him.
我们不知道他的电话号码,否则我们就会给他打电话。
3、 有时,虚拟条件语气的从句中,主、从句可以省略其中的一个,来表示说话人的一种强烈的感情。
①省略从句
he would have finished it.
他本该完成了。
you could have passed this exam.
你本能通过这次考试的。
②省略主句
if i were at home now.
要是我现在在家里该多好啊。
if only i had got it.
我要是得到它了该多好啊。
4.注意,在虚拟语气的从句中,动词be的过去时态一律用were,不用was。
if i were you,i would go to look for him.
如果我是你,就会去找他。