PET 专项突破

完成时家族:现在完成进行时与过去完成时

14 分钟

KET 只考现在完成时。PET 新增两个成员,把「时间线」补全。


一、现在完成进行时:have/has been + 动词ing

用来强调「动作从过去持续到现在,而且还在继续」。

  • I have been waiting for an hour.(等了一小时,还在等
  • She has been learning Chinese since 2020.(一直在学)
  • It has been raining all day.(下了一整天,现在还在下)

和现在完成时的区别(这是考点):

现在完成时 现在完成进行时
强调 结果 过程和持续
I have read three books.(读完了三本) I have been reading all morning.(读了一上午)
She has written a letter.(信写好了) She has been writing a letter.(一直在写,可能没写完)

判断口诀看重「做完没有」用完成时,看重「做了多久」用完成进行时。

典型信号词:for、since、all day、all morning、recently、lately

注意:状态动词(know、like、be、have 表「有」)不用进行形式——

  • I have known him for years.(对)
  • I have been knowing him.(错)

二、过去完成时:had + 过去分词

用来表示「过去的过去」——在过去某个时间点之前就已经完成的事。

When I arrived, the film had already started.
(我到的时候,电影在那之前就开始了)

时间线:电影开始 → 我到达 → 现在

过去完成时永远和另一个过去时间同时出现。单独一句 I had eaten. 是不成立的——必须有一个参照点。

常见搭配

句型
By the time + 过去时, 主句用过去完成 By the time he came, we had finished.
When + 过去时, 另一件事用过去完成 When she arrived, the train had left.
before / after He had left before I arrived.
表示「原本以为」 I thought you had gone home.

after 和 before 的特殊性:这两个词本身已经表明了先后,所以用不用过去完成时都可以

  • After he had finished / finished his homework, he went out.(都对)

三、三种「完成」的对比

时态 参照点
现在完成 现在 I have finished.(现在做完了)
现在完成进行 现在,强调过程 I have been working for hours.
过去完成 过去某一刻 I had finished before he came.

四、PET 里怎么考

  • 阅读 Part 6:填 had、been、have
  • 听力:讲述经历时大量出现
  • 写作 Part 2 故事过去完成时是讲故事的利器——用它交代「之前发生了什么」,故事立刻有层次

When Tom got to the station, the train had already left. He had forgotten to set his alarm.

在故事里用一次过去完成时,Language 分会明显提高。


练习:填空

  1. I ____ (wait) here for two hours and she still hasn't come.
  2. When we arrived at the cinema, the film ____ (already begin).
  3. She ____ (learn) English since she was six.
  4. By the time I got home, my parents ____ (go) to bed.
  5. It ____ (rain) all morning — look at the streets!
小纸条

现在完成时和现在完成进行时怎么区分?过去完成时为什么不能单独使用?

登录 后可看答案