过去完成进行时

过去完成进行时聚焦延续到过去某个参照点之前的活动,常用来说明那时已经持续了多久,或者为什么当时会出现某种情况。

把语法放进生活

你回忆一个漫长下午结束时自己为什么很疲惫。

I had been studying for three hours.

学习持续到了那个过去的时间点,重点是此前的过程与时长。

搭好句子

看清句型结构。

句型结构与例句
肯定句subject + had been + verb-ingWe had been walking for hours.
否定句subject + had not been + verb-ingShe had not been sleeping well.
疑问句Had + subject + been + verb-ing?Had you been waiting long?

知道什么时候用

真实情境中的用法。

01过去事件之前的持续时长

先确定一个过去事件,例如公交车到站,再说明在它之前持续进行的活动。for、since 描述的时长与起点,都是相对于这个过去事件,而不是现在。

We had been waiting for forty minutes when the bus finally arrived.

02解释当时的结果

较早的活动可能刚刚在参照点前停止。关键是它与当时情况的联系,因此这个形式适合解释疲惫、凌乱、湿衣服或尚未完成的工作。

His hands were covered in paint because he had been decorating.

03先找准参照点

I have been waiting 从现在出发,I had been waiting 从过去某时出发。二者的区别往往在叙述者的观察点,而不是活动本身不同。

At noon yesterday, I had been working for four hours.

04状态与完成数量

状态和已经完成的数量通常用过去完成时。had known 描述状态,had answered ten messages 汇报完成数量;had been answering messages 则把重点放在回复消息的过程。

小地方,大不同

留意这些常见错误。

避免I had been knew him for years.
这样说I had known him for years.

这里的 know 是状态动词,用过去完成时的一般形式。

避免She had been work all morning.
这样说She had been working all morning.

完成进行结构中,had been 后接 -ing 形式。

轮到你了

试一试,看看是否理解。

先自己选择,再查看解释。答错也没关系,重要的是理解原因。

01昨天午餐送到时,我们已连续工作三小时,还有工作没做完:we ___.

查看答案与解析

had been working

had been working 强调持续到过去参照点的活动。

02哪个形式表达过去某时之前就已具备的知识?

查看答案与解析

had known

知道是一种状态,使用 had known。

本课例句与讲解由 TenseQuest 编写。

延伸参考:British Council · Past tense

发现问题?告诉我们。

把知识连接起来

接下来学什么。

过去完成时现在完成进行时过去进行时