Skip to content

Unit 16 — Past perfect continuous

I had been doing


A. Past Perfect Continuous:过去完成进行时

1. Example situation

昨天早上,我起床后看向窗外。

The sun was shining, but the ground was very wet.

太阳正在照耀,但是地面非常湿。

为什么地面是湿的?

因为:

It had been raining.

之前一直在下雨。

注意:

It was not raining when I looked out of the window.

当我看向窗外的时候,已经没有下雨了。

但是:

It had been raining before.

在那之前一直下着雨。


2. Past Perfect Continuous 的基本结构

had + been + doing

也就是:

had + been + 动词-ing

例如:

  • had been doing
  • had been working
  • had been playing
  • had been waiting
  • had been raining
  • had been running

3. 所有人称都使用 had been

主语结构
Ihad been doing
wehad been doing
youhad been doing
theyhad been doing
hehad been doing
shehad been doing
ithad been doing

缩写:

I’d been = I had been you’d been = you had been he’d been = he had been she’d been = she had been we’d been = we had been they’d been = they had been


4. 核心含义

过去完成进行时表示:

在过去某个时间点之前,一件事情已经持续了一段时间。

核心结构:

过去某时之前 + 一直在做某事

时间轴:

EARLIER PAST                 PAST                NOW
     │                        │                   │
     ├────────────────────────▶                   │
       had been doing         ●                   │
                          reference point

也就是:

had been doing = 到过去那个时候之前,一直在……


5. Example — I’d been repairing my bike

My hands were dirty because I’d been repairing my bike.

我的手很脏,因为之前我一直在修自行车。

时间关系:

repairing bike
────────────────▶ hands were dirty
                      │
                     PAST

重点不是单纯说:

我修过自行车。

而是强调:

在手很脏之前,我一直在修自行车。

修车这个持续的动作造成了:

hands were dirty


6. Example — He’d been working hard all day

Tom was tired when he got home. He’d been working hard all day.

Tom 到家时很累。

因为:

他之前一整天都一直在努力工作。

时间:

working all day
─────────────────▶ got home
                       │
                    was tired

这里强调:

持续的工作 → 导致过去那个时候很累


7. Example — She hadn’t been living there very long

I went to Madrid a few years ago and stayed with a friend of mine.

几年前我去了马德里,住在一个朋友那里。

She hadn’t been living there very long, but she knew the city very well.

她当时在那里住的时间并不长,但是她对这座城市非常熟悉。

否定结构:

had not been doing

缩写:

hadn’t been doing


8. 一个动作持续到另一个过去事件发生

We’d been playing tennis for about half an hour when it started to rain heavily.

开始下大雨的时候,我们已经打了大约半小时网球。

时间关系:

playing tennis
─────────────────────▶ rain started
   about 30 minutes          │
                            PAST

这里有两个动作:

更早开始并持续

We had been playing tennis.

后来发生

It started to rain.

所以:

had been doing + when + past simple

是非常典型的组合。


B. have been -ing vs had been -ing

9. Present Perfect Continuous

结构:

have/has been + doing

核心:

到现在为止一直在……

时间:

PAST ─────────────────▶ NOW
     have been doing

例如:

I hope the bus comes soon. I’ve been waiting for 20 minutes.

希望公交车快点来。

我已经等了20分钟了。

这里:

等待开始于过去 → 持续到现在

参考点:

NOW


10. Past Perfect Continuous

结构:

had been + doing

核心:

到过去某个时候为止一直在……

时间:

EARLIER PAST ─────────▶ PAST ─────▶ NOW
      had been doing      ↑
                     reference point

例如:

At last the bus came. I’d been waiting for 20 minutes.

公交车终于来了。

在公交车来之前:

我已经等了20分钟。

参考点不是现在,而是:

the bus came

这个过去事件。


11. I’ve been waiting vs I’d been waiting

Present Perfect ContinuousPast Perfect Continuous
I’ve been waiting for 20 minutes.I’d been waiting for 20 minutes.
我已经等20分钟了。当时我已经等了20分钟了。
参考点 = 现在参考点 = 过去
have been doinghad been doing

最关键的区别:

have been doing → 到现在

had been doing → 到过去某时


12. Example — running

Present Perfect Continuous

James is out of breath. He’s been running.

James 现在气喘吁吁。

因为:

他之前一直在跑步。

这里:

he’s been = he has been

参考点:

NOW


Past Perfect Continuous

James was out of breath. He’d been running.

James 当时气喘吁吁。

因为:

他之前一直在跑步。

这里:

he’d been = he had been

参考点:

PAST


13. 两者统一理解

have been doing

站在现在,往前看一个持续的动作

doing doing doing doing
─────────────────────▶ NOW
     have been doing

had been doing

站在过去,往更早以前看一个持续的动作

doing doing doing doing
─────────────────────▶ PAST ─────▶ NOW
     had been doing

C. Past Continuous vs Past Perfect Continuous

14. was doing

Past Continuous:

was/were + doing

表示:

过去某个时间点,正在做某事

例如:

Katherine was lying on the sofa.

Katherine 当时正躺在沙发上。

重点:

那个时候正在做什么


15. had been doing

Past Perfect Continuous:

had been + doing

表示:

在过去那个时间点之前,一直在做什么

例如:

She was tired because she’d been working hard.

她当时很累,因为之前一直在努力工作。

重点:

之前持续了什么动作


16. was doing vs had been doing

Past ContinuousPast Perfect Continuous
was/were doinghad been doing
当时正在做在那之前一直在做
关注过去某时的动作关注过去某时之前的持续过程

例如:

Katherine was lying on the sofa.

她当时正躺在沙发上。

因为:

She’d been working hard.

她之前一直在努力工作。

时间关系:

working hard
─────────────────▶ tired / lying on sofa
   had been working       was lying
                               │
                              PAST

17. 图片中的下雨例子

It wasn’t raining when we went out.

我们出去的时候没有下雨。

The sun was shining.

太阳正在照耀。

但是:

It had been raining.

在这之前一直在下雨。

所以:

the ground was wet.

地面是湿的。


18. 三个进行时对比

时态结构意思
Present Continuousam/is/are doing现在正在做
Past Continuouswas/were doing过去某时正在做
Past Perfect Continuoushad been doing到过去某时之前一直在做

例如:

Present Continuous

It is raining.

现在正在下雨。

Past Continuous

It was raining when I went out.

我出去的时候正在下雨。

Past Perfect Continuous

It had been raining before I went out.

我出去之前一直在下雨。


19. Past Perfect vs Past Perfect Continuous

这是 Unit 15 和 Unit 16 最重要的区别。

Past Perfect

had done

强调:

完成 / 结果

Past Perfect Continuous

had been doing

强调:

过程 / 持续


20. had done

例如:

I had repaired my bike.

我已经把自行车修好了。

重点:

修完了


21. had been doing

I had been repairing my bike.

我之前一直在修自行车。

重点:

修车这个过程持续了一段时间

不一定表示:

已经修好了。


22. 一个非常重要的区别

He had worked.

他已经工作过 / 完成了相关工作。

更关注:

完成

He had been working.

他之前一直在工作。

更关注:

持续过程


23. 为什么手是脏的?

图片中的例子:

My hands were dirty because I’d been repairing my bike.

这里使用:

had been repairing

非常自然。

因为我们想解释:

为什么手会脏?

答案是:

之前一直在修车。

所以强调:

持续活动造成的结果

这也是 Past Perfect Continuous 非常典型的用法。


24. 常见逻辑

过去出现一个结果:

tired dirty wet out of breath

然后解释:

之前一直发生什么?

使用:

had been doing

例如:

Tom was tired because he had been working all day.

My hands were dirty because I had been repairing my bike.

The ground was wet because it had been raining.

James was out of breath because he had been running.

可以记成:

过去的结果 ← 之前持续的动作


D. 有些动词通常不用进行时

有一些动词通常不使用:

be + -ing

例如:

know

所以通常不说:

❌ had been knowing

而说:

had known


25. Example — had known

We were good friends. We had known each other for years.

我们是好朋友。

当时我们已经认识很多年了。

不说:

❌ We had been knowing each other for years.


26. Example — had had

A few years ago Lisa cut her hair really short.

几年前 Lisa 把头发剪得很短。

I was surprised because she’d always had long hair.

我很惊讶,因为在那之前她一直留着长发。

这里:

she’d always had

展开:

she had always had

第一个 had

Past Perfect 助动词

第二个 had

have 的过去分词

所以:

had had

是完全正确的结构。


27. had had 怎么理解?

例如:

She had had long hair for years.

可以拆成:

had + had

第一个:

had = 过去完成时助动词

第二个:

had = have 的过去分词

意思:

到过去那个时候为止,她已经留长发很多年了。


28. 四个时态放在一起

work 为例:

Present Continuous

I am working.

我现在正在工作。


Present Perfect Continuous

I have been working for three hours.

我已经连续工作三个小时了。

参考点:

现在


Past Continuous

I was working at 8 p.m.

晚上8点的时候我正在工作。

参考点:

过去8点那个瞬间


Past Perfect Continuous

I had been working for three hours when he called me.

他打电话给我的时候,我已经连续工作三个小时了。

参考点:

he called me


29. 时间轴统一理解

am doing

现在正在做

─────●─────
     NOW
   am doing

was doing

过去某时正在做

─────●──────────── NOW
    PAST
  was doing

have been doing

到现在一直在做

───────────────▶ NOW
  have been doing

had been doing

到过去某时之前一直在做

─────────▶ PAST ─────────▶ NOW
 had been doing

30. Past Perfect vs Past Perfect Continuous 对照

Past PerfectPast Perfect Continuous
had donehad been doing
过去完成时过去完成进行时
强调完成、结果强调过程、持续
已经做了之前一直在做
I had repaired it.I had been repairing it.
重点:修好了重点:一直在修

31. Unit 15 + Unit 16 一起理解

Unit 15

had done

核心:

过去的过去

例如:

When I arrived, he had left.

我到的时候,他已经走了。


Unit 16

had been doing

核心:

过去的过去 + 持续进行

例如:

When I arrived, he had been waiting for an hour.

我到的时候,他已经等了一个小时了。


32. 一个例子看懂区别

假设:

Tom 8:00 开始工作。

你 12:00 看到 Tom。


Past Continuous

At 12, Tom was working.

12点的时候 Tom 正在工作。

关注:

12点那个瞬间


Past Perfect Continuous

At 12, Tom had been working for four hours.

到12点的时候,Tom 已经连续工作4个小时了。

关注:

8:00 → 12:00 这段持续时间

时间:

8:00                         12:00
  │                            │
  ├────────────────────────────▶
          working
      had been working
                               ↑
                         reference point

33. for 经常和 had been doing 一起出现

因为过去完成进行时经常强调:

持续多久

所以很常见:

for + 一段时间

例如:

I’d been waiting for 20 minutes.

We’d been playing tennis for half an hour.

He’d been working all day.


34. 图片中的核心例句汇总

Example中文
It had been raining.之前一直在下雨。
I’d been repairing my bike.我之前一直在修自行车。
He’d been working hard all day.他之前一整天都一直在努力工作。
She hadn’t been living there very long.她当时在那里住的时间还不长。
We’d been playing tennis for about half an hour.我们当时已经打了大约半小时网球。
I’ve been waiting for 20 minutes.我已经等20分钟了。
I’d been waiting for 20 minutes.当时我已经等20分钟了。
He’s been running.他之前一直在跑步。
He’d been running.他当时之前一直在跑步。
She’d been working hard.她之前一直在努力工作。
We had known each other for years.当时我们已经认识很多年了。
She’d always had long hair.在那之前她一直留着长发。

35. 最重要的三个问题

看到一个句子时,可以问自己:

问题 1:参考点在哪里?

如果是:

现在

可能使用:

have been doing

如果是:

过去某个时间

可能使用:

had been doing


问题 2:我要强调完成还是持续?

强调:

完成 / 结果

使用:

had done

强调:

持续 / 过程

使用:

had been doing


问题 3:是不是状态动词?

例如:

know

通常不用进行时。

所以:

✅ We had known each other for years.

而不是:

❌ We had been knowing each other for years.


36. 最终核心对照表

时态结构核心意思
Present Continuousam/is/are doing现在正在做
Past Continuouswas/were doing过去某时正在做
Present Perfect Continuoushave/has been doing到现在一直在做
Past Perfect Continuoushad been doing到过去某时之前一直在做

37. 最重要的时间轴

Present Perfect Continuous

have been doing

PAST
  │
  ├────────────────────────▶ NOW
        have been doing

意思:

到现在为止一直在……


Past Perfect Continuous

had been doing

EARLIER PAST
     │
     ├────────────────▶ PAST ─────────▶ NOW
          had been doing ↑
                     reference point

意思:

到过去那个时候为止,一直在……


38. 一句话记忆

have been doing

到现在一直在做

had done

到过去那个时候已经做完 / 做过

had been doing

到过去那个时候之前一直在做

最核心:

Past Perfect Continuous = Past Before Past + Continuous

也就是:

过去的过去 + 持续过程

例如:

Tom was tired because he had been working all day.

Tom 当时很累,因为:

在“他很累”这个过去时间点之前,他已经持续工作了一整天。