现在完成时(have/has + 过去分词)
过去的动作和现在有联系;常和 ever、never、just、already、yet、for、since 连用。
例句
- I have lived here for 5 years.我在这儿住了 5 年了。
- She has just left.她刚走。
- Have you ever been to London?你去过伦敦吗?
讲解
学完这一课,你能
- 说自己做过、没做过什么(经历)
- 说一件事从过去持续到现在有多久了
- 说“刚刚”“已经”“还没”
- 分清现在完成时和一般过去时
构成
have / has + 过去分词
我吃过了。(缩写 I've eaten)
她走了。(缩写 She's gone)
否定句:haven't / hasn't + 过去分词
一般疑问句:把 have / has 提到主语前面
规则动词的过去分词和过去式一样,加 -ed:worked, played, studied
经历
ever 和 never
说从过去到现在做过或没做过的事,不说具体什么时候:
我去过日本。
她从没吃过寿司。
你去过伦敦吗?
他去过巴黎。(已经回来了)
他去巴黎了。(人现在在那边或者在路上)
持续
for 和 since
从过去开始、一直持续到现在的事:
她在这儿住了十年了。(现在还住在这儿)
我从 2020 年起就在这儿工作。
for + 一段时间:for five years, for two hours
since + 起点:since 2020, since Monday, since I was a child
你在这儿住多久了?
just、already、yet
刚刚、已经、还没
我刚做完。
她已经走了。
你做完了吗?
我还没吃饭。
just、already 放在 have 和过去分词之间;yet 放在句末,用在否定句和疑问句。
我把钥匙弄丢了。(现在还找不到)
和一般过去时对比
有没有具体的过去时间
说清楚了过去什么时候(yesterday, last week, in 2018, two days ago),用一般过去时:
我 2018 年去了日本。
我去过日本。
你什么时候到的?
today、this week、this month、this year 要看这段时间过完了没有。
我今天还没见到她。
这个星期雨下得很多。
这个月她给我打了三次电话。
我今天上午见到她了。
常见错误
过去分词和过去式混用
have 后面用过去分词,不用过去式。
有 yesterday 这类具体的过去时间,用一般过去时。
“从……到现在”要用现在完成时。
一段时间用 for,起点用 since。
die 是一下子完成的动作,不能和 for 连用;也可以说 He has been dead for two years.
练习要点
1. 现在完成时 · 经历(ever / never)
用现在完成时说到现在为止做过或没做过的事,常和 ever、never 连用。
- I have been to Japan.我去过日本。
- She has never tried sushi.她从没吃过寿司。
2. 现在完成时 · for / since
for + 一段时间(for 5 years),since + 起点(since 2020),表示从过去一直持续到现在。
- I've lived here for 10 years.我在这儿住了 10 年了。
- She has worked here since 2018.她从 2018 年起就在这里工作。
3. 现在完成时 · just / already / yet
just 表示刚刚,already 表示已经;yet 用在否定句和疑问句,表示“还没”“已经……了吗”。
- I've just arrived.我刚到。
- Have you eaten yet?你吃过饭了吗?
4. 现在完成时 · 时间还没过完(today / this week)
today、this week 这段时间还没结束,说到现在为止的情况用现在完成时;今天的事已经说完了,用一般过去时也可以。
- I haven't seen her today.我今天还没见到她。
- We've had a lot of rain this week.这个星期雨下得很多。
练到脱口而出
围绕这 4 个要点的小练习,每答一题立刻批改。免费开始。