条件句有真实条件句和非真实(虚拟)条件句两种。真实条件句所表示的假设是有可能发生的,而非真实条件句则通常表示一种假想,与事实相反或不大可能会发生:
If I have time, I will go with them. 假若我有时间,我就同他们去。(陈述语气)
If I were you, I would go with them. 假若我是你,我就同他们去。(虚拟语气)
虚拟条件句的三种基本类型
一、与现在事实相反
若与现在事实相反,条件从句的谓语用过去式(be通常用were),主句谓语用"should (would, could, might)+动词原形":
If you took a taxi, you’d get there quicker. 如果你坐出租车去,你可以快一点到那里。(但你不坐)
If I knew her number I could ring her up. 要是我知道她的电话号码,我就可以给她打电话了。(可惜我不知道)
二、与过去事实相反
若与过去事实相反,条件从句的谓语用过去完成时(had+过去分词),主句谓语用“should (would, could, might)+have+过去分词”:
If I’d left sooner,I’d have been on time. 要是我早点动身,我就准时到了。(但我动身太迟了)
If we had found him earlier we could have saved his life. 要是我们当时早点找到他的话,我们就可以救活他。(可惜我们找到他太晚了)
三、与将来事实相反
若与将来事实相反,条件从句的谓语用过去式(be通常用were),主句谓语用"should (would, could, might)+动词原形":
If he went, would you go too? 如果他去,你也去吗?(大概他不会去)
If I asked him, I’m sure he’d help us. 如果我向他提出要求,肯定他会帮助我们。(不过我不打算这样做)
注:几点特别说明
① 主句谓语中的should主要用于第一人称后。would, might, could的大致区别是:would表示结果,might表示可能性,could表示能力、允许或可能性。比较:
If you tried again you would succeed. 要是你再试一试,你就会成功的。(would表结果)
If you tried again you might succeed. 要是你再试一试,你可能会成功的。(might表可能)
If you tried again you could succeed. 要是你再试一试,你就能成功了。(could表能力)
② 条件从句的谓语动词为be时,不管其主语为单数还是复数通常都用were,但在口语或非正式文体中的单数第一人称和第三人称后,也可用was,不过在 If I were you这样的表达中,通常还是以用were为宜。
③ 有时条件从句用would表示愿意:
If he would live on with me, I would be his better half. 要是他还愿意跟我过,我仍会做他的妻子。
④ 对于与将来事实相反的情形,请注意以下几点:一是这里说的与将来事实相反,实为对将来情况的推测;二是此用法中的条件从句谓语除用过去式外,有时也用“should+动词原形”(表示可能性极小,常译为“万一”)或“were to+动词原形”(表示与将来事实相反的假设);三是当条件从句使用“should+动词原形”这样的谓语时,主句谓语除可用“should (would, could, might)+动词原形”这样的虚拟语气外,也可用陈述语气或祈使语气:
If it should rain tomorrow, don’t expect me. 万一明天下雨,就不要等我了。
I should see him, I’ll tell him. 万一我见到他,我就告诉他。