第三条件句
B1 Third conditional 36 / 50
概要
第三条件句谈论的是虚拟过去——那些没有发生的事。我们想象一个不同的过去,以及它带来的不同结果:If I had studied, I would have passed(但我当时没有学习,所以没通过)。
规则
第三条件句用来回顾一个过去的情况,并想象不同的结局,常用来表达遗憾、批评,或者“本可能发生却没有发生的事”。
这个句型分为两部分:
| If 从句(条件) | 主句(结果) |
|---|---|
| if + 过去完成时(had + 过去分词) | would / could / might have + 过去分词 |
If you had told me, I could have helped you.
这两部分可以调换顺序。主句在前时,不要加逗号:
- If she had left earlier, she would have caught the train.
- She would have caught the train if she had left earlier.
在结果部分选择正确的情态动词:
| 情态动词 | 含义 |
|---|---|
| would have | 确定的结果 |
| could have | 过去的能力或可能性(“能够”) |
| might have | 可能但不确定的结果(“也许”) |
两个分句都用过去时描述,但意思是不真实的:一切都和实际发生的相反。If I had known 的意思是我当时并不知道。
第二条件句与第三条件句——要看时间,而不只是看 if:
| 条件句 | 时间 | 例句 |
|---|---|---|
| 第二 | 不真实的现在/将来 | If I knew her number, I would call her. (我现在不知道。) |
| 第三 | 虚拟过去 | If I had known her number, I would have called her. (我当时不知道。) |
形式与结构
仔细留意缩略形式——‘d 可能表示两种不同的意思:
| 缩略形式 | 完整形式 | 位置 |
|---|---|---|
| I’d studied | I had studied | if 从句(过去完成时) |
| I’d have studied | I would have studied | 主句 |
所以在 If I’d known, I’d have come 里,第一个 ‘d = had,第二个 ‘d = would。
否定式:
| 分句 | 否定形式 |
|---|---|
| If 从句 | if + hadn’t + 过去分词(If I hadn’t missed the bus…) |
| 主句 | wouldn’t / couldn’t / might not have + 过去分词 |
疑问句:只对结果分句做倒装——情态动词(would / could / might)放在主语前面,wh-词(what、where、why)放在情态动词前面。if 从句保持陈述句语序:if I had told you,而不是 if had I told you。
- Would you have believed me if I had told you? (Yes, I would. / No, I wouldn’t.)
- Where would you have gone if the road had been closed?
wish / if only + 过去完成时表达对过去的遗憾(同样是虚拟过去的想法,只是没有 if 从句):
- I wish I had studied harder. (但我其实没有)
- If only we hadn’t sold the house. (但我们其实卖了)
例句
| English | 说明 |
|---|---|
| If I had studied, I would have passed the exam. | 典型的遗憾——我没学习,所以没通过。 |
| If you’d told me, I could have helped. | could have = 我当时能做到,但没有机会。 |
| If she had taken a map, she might not have got lost. | might (not) have = 一种不确定的过去可能性。 |
| He would have called you if he’d had your number. | he’d had = he had had;注意语序,没有逗号。 |
| If we hadn’t missed the flight, we wouldn’t have met them. | 否定条件,否定结果。 |
| They could have won the match if they had trained harder. | 主句在前——注意 if 前面没有逗号。 |
| I wish I had saved more money last year. | wish + 过去完成时 = 对过去的遗憾。 |
| If only I had listened to your advice! | if only 让遗憾的语气更强烈。 |
常见错误
- If I would have known -> If I had known——if 从句要用过去完成时,不能用 would have。
- I would of helped -> I would have helped——would’ve 读起来像“would of”,但它其实一直都是 have。
- If you told me, I would have come -> If you had told me, I would have come——表示虚拟过去,if 后面需要用过去完成时。
- I would have went -> I would have gone——have 后面要用过去分词,不用一般过去时。
- I wish I studied harder (谈论过去) -> I wish I had studied harder——表达对过去的遗憾要用过去完成时。
学习提示
- 两部分,两个层次:if 部分用 had + done,结果部分用 would have + done。
- 读出来是 would’ve / could’ve / might’ve——但绝对不要写成 would of。
- 判断第二条件句还是第三条件句,看时间:不真实的现在 = 第二条件句;不真实的当时(一个已经结束的过去情况) = 第三条件句。
- 过去的条件也可能导致现在的结果——这叫混合条件句(If I had taken that job, I’d be rich now),会在第 44 课讲到。