Skip to content

完成时态

p110

现在完成时

have/has done-“已经”

-完成的动作
-动作发生在过去,持续到现在,并且还可能继续下去

I have been here for 10 years.
我在这已经10年了。

By now I have finished the book
此刻我已经读完这本书了。

⭐ By now=so far: 到目前,此刻已经

标志1
by+现在的时间/动作=用现在完成时

标志2
since+时间,for+时间段

标志3
over the past/last+时间段
in the past/last+时间段

注意-认识单词decade“十年”

标志4
在句型 It is the first/second time that..,从句用现在完成时。

标志5
看到 already, yet, ever, just, so far, recently, up to now 可优先考虑现在完成时。

过去完成时

had done: 已经

"过去的过去"

Before yesterday

By the time we arrived at the airport the plane had taken off.
我们抵达机场时飞机已经起飞了。

标志1
by+过去的时间/动作=用过去完成时

标志2
在句型 hardly/scarcely..when, no sooner..than,主句用过去完成时,从句用过去时; “一..就;刚.….就"。

将来完成时

will have done-“已经”

将来完成的动作

标志
by+将来的时间/动作=用将来完成时

注意
在句型by the time you come back,后面用将来完成时。

随堂练习

In the last few years, China ____ (make) great achievements in environment protection. ❌

answer

had made ❌
has made ✅
因为这句话是在现在说的, 不是在过去说的

I (hear) nothing from him up to now. ✅

answer

have heard

We ____ (have) three major snowstorms so far this winter. ❌

answer

have ❌
have had ✅
had是"有"的意思, 前边儿的have是"已经"

Yanzu ____ (live) here since 2013. ✅

answer

has lived

By the time class was over, the rain ____ (stop). ✅

answer

had stopped

He told me that he ____ (be) here for ten minutes. ❌ 过去分词不熟

answer

had be ❌
had been ✅

The play ____ (be) on for five minutes, and you are a little late. ❌

answer 🤖

had been ❌
has been ✅

DeepSeek Analysis: 需要注意整个句子的时间基点, 也就是我认为的 "这句话是在现在时态说的"

You ____ (reach) Guangzhou by this time tomorrow. ✅

answer

will have reached

By the time you get home, I ____ (clean) the house from top to bottom. ✅

answer

will have cleaned

现在完成进行时

现在完成时 vs 现在完成进行时 —— 核心区别图解

have been doing
一直

He ____ (work) on his term paper the whole morning but he hasn't written a word. ✅

answer

has been working

我只身前行 却仿佛带着一万雄兵