英语的现在完成时
做个小测验,检验一下学习成果现在完成时把过去和现在联系起来。它的构成是have 或 has + 过去分词,用来谈论经历、变化以及尚未结束的时间段。
现在完成时的构成
I、you、we 和 they 用 have,he、she 和 it 用 has,后面再加过去分词。
| 主语 | 肯定句 | 否定句 | 疑问句 |
|---|---|---|---|
| I | I have worked | I haven't worked | Have I worked? |
| you | you have worked | you haven't worked | Have you worked? |
| he, she, it | she has worked | she hasn't worked | Has she worked? |
| we | we have worked | we haven't worked | Have we worked? |
| they | they have worked | they haven't worked | Have they worked? |
规则动词加 -ed (work, worked)。很多常用动词是不规则的,要记住它们的过去分词,参见不规则动词一课。
| 原形 | 过去分词 | 例句 |
|---|---|---|
| go | gone | She has gone home. |
| see | seen | I've seen this film. |
| eat | eaten | We've eaten already. |
| be | been | Have you been to Rome? |
什么时候用
具体时间不重要或者还没有结束,重要的是现在的结果或经历。汉语里常用“过”“了”“已经”来表达类似的意思。
| 用法 | 例句 |
|---|---|
| 人生经历 | I've visited Canada twice. |
| 过去的动作对现在有影响 | I've lost my keys. |
| 最新消息 | The prime minister has resigned. |
| 尚未结束的时间段 | She's drunk three coffees today. |
| 从过去开始并持续到现在的情况 | We've lived here for ten years. |
ever, never, already, yet 和 just
这些词经常和现在完成时连用。注意每个词在句子中的位置。
| 词 | 意思和位置 | 例句 |
|---|---|---|
| ever | 曾经,用于疑问句,放在过去分词前 | Have you ever ridden a horse? |
| never | 从来没有,放在过去分词前 | I've never ridden a horse. |
| already | 已经(比预期早),放在过去分词前 | He's already finished. |
| yet | 到目前为止,用于疑问句和否定句,放在句末 | Has the bus come yet? |
| just | 刚刚,放在过去分词前 | They've just arrived. |
小测验
关于本课的5道小题,看看你能答对几道?
0 XP
第1题,共5题
请选择正确答案。
Tom isn't here. He ___ to the bank.
for 和 since
两者都回答 How long?(多长时间?)这个问题。for 后面接一段时间,since 后面接起始时间点。
| for + 一段时间 | since + 起始点 |
|---|---|
| for two hours | since nine o'clock |
| for three weeks | since Monday |
| for ten years | since 2015 |
| for a long time | since I was a child |
现在完成时与一般过去时
说出或问到事情发生的具体时间,或者时间已经结束时,用一般过去时。没有给出已结束的时间时,用现在完成时。
| 现在完成时 | 一般过去时 |
|---|---|
| I've been to Paris. | I went to Paris last year. |
| Have you seen my phone? | Did you see the match yesterday? |
| She's worked here since May. | She worked here from 2010 to 2015. |
| I've had two exams this week. | I had two exams last week. |
been 与 gone
go 有两个意思不同的过去分词。
- He has been to Spain:他去过西班牙,已经回来了。
- He has gone to Spain:他去西班牙了,现在人在那里。
常见错误
现在完成时不能和已经结束的时间连用;表示持续了多久时,不能用一般现在时。
| 错误 | 正确 |
|---|---|
| I have seen him yesterday. | I saw him yesterday. |
| I live here since 2018. | I have lived here since 2018. |
| She has went home. | She has gone home. |
| I've lived here since ten years. | I've lived here for ten years. |
例句
I've never eaten octopus.我从没吃过章鱼。
Have you finished your report yet?你的报告写完了吗?
She's just left the office.她刚离开办公室。
We've known each other since school.我们上学时就认识了。
They haven't called me for weeks.他们好几个星期没给我打电话了。
My brother has broken his arm.我弟弟摔断了胳膊。
How long have you lived in London?你在伦敦住了多久了?