“过去完成式” (Past perfect)
🔒 登录后可标记已读- 一句话里有两件过去的事,谁先谁后光凭过去式看不出来,这时候就得靠过去完成式排序。
- 结构是 had + 过去分词,说在过去某个时间点之前已经发生的事。
- 两件过去的事放在一起,先发生的用过去完成式,后发生的用过去简单式,语序换了意思不变。
- before + 过去完成式,说某件事在另一件事发生前还没做完。
- 常搭配 already/still/just/ever/never 这几个副词;只有一件过去的事时不用过去完成式,哪怕年代久远。
重点内容
基本结构
had + 过去分词(past participle)
- 肯定:He had forgotten to buy bread.
- 否定:It hadn't rained at the beginning of May.
- 疑问:Had the parcel arrived when you called?
用法一:时间点之前已完成的动作
表示在过去某个时间点之前已经发生的事情。
- She'd published her first poem by the time she was eight.
→ 她八岁之前就已经发表了第一首诗。 - We'd finished all the water before we were halfway up the mountain.
→ 还没爬到一半,水就喝完了。
用法二:两件过去的事,说清楚哪件先发生
过去完成式 = 先发生的那件事;过去简单式 = 后发生的那件事。
- When the police arrived, the thief had escaped.
→ 警察到的时候,小偷已经跑了。(先跑,后到) - My new job wasn't exactly what I'd expected.
→ 新工作不完全是我预期的样子。
📌 句子顺序不影响意思: The thief had escaped when the police arrived. = When the police arrived, the thief had escaped.
📌 只有一件过去的事时,不用过去完成式,哪怕是很久以前: ✅ The Romans spoke Latin.(不是 had spoken)
用法三:before + 过去完成式
before + 过去完成式 表示某动作在另一件事发生之前还没完成。
- They left before I'd spoken to them. → 我还没来得及跟他们说话,他们就走了。
- The author died before he'd finished the series. → 作者还没写完系列就去世了。
常见副词搭配
| 副词 | 意思 | 例句 |
|---|---|---|
| already | 在那之前已经 | He'd already left when I called. |
| still | 仍然(还没) | It still hadn't rained by May. |
| just | 刚刚 | She'd just moved to Berlin. |
| ever | 有没有(曾经) | It was the most beautiful photo I'd ever seen. |
| never | 从来没有 | I'd never met anyone from California. |
例句练习
| 英文 | 中文 |
|---|---|
| He couldn't make a sandwich because he'd forgotten to buy bread. | 他没办法做三明治,因为他忘了买面包。 |
| The hotel was full, so I was glad that we'd booked in advance. | 酒店客满了,幸好我们提前预订了。 |
| When I arrived at the party, most people had already left. | 我到派对的时候,大多数人已经走了。 |
| She had never seen the sea before she moved to the coast. | 搬到海边之前,她从没见过大海。 |
| By the time he graduated, he had worked three part-time jobs. | 毕业前,他已经做过三份兼职了。 |
常见错误
❌ When I arrived, she already left. ✅ When I arrived, she had already left. (表示比另一件过去的事更早发生,要用过去完成式 had left)
❌ He had spoke to her before the meeting. ✅ He had spoken to her before the meeting. (had 后面接过去分词,speak 的过去分词是 spoken,不是 spoke)
❌ They had arrived yesterday. ✅ They arrived yesterday. (有明确的过去时间词 yesterday,表示单一事件,用过去简单式就够了)
Sources
Blog / Website: