B1 · 中级 · 英语 · 10 分钟

现在完成时

现在完成时把过去的动作与现在联系起来。它由have或has加上过去分词构成。像yesterday这样表示已经结束的时间的词,会把句子送回一般过去时。

这节课练什么

  • 用 have 或 has 加上过去分词来构成。
  • 在 for 和 since 之间选择。
  • 让 yesterday 与一般过去时搭配。

讲解

形式

现在完成时是have或has加上过去分词:I have seen that film、She has lost her keys。he、she和it用has。其余用have。过去分词并不总是一般过去式。go的一般过去式是went,但分词是gone:She has gone home。

for 与 since

for表示一段时间的长度:for three years。since指出起点:since 2020、since Monday。当情况一直持续到现在时,两者都可以与现在完成时连用:She has lived here for three years。在这个结构里,during three years不能代替for。

不与 yesterday 连用

一个已经结束的时间会把现在完成时排除在外。I saw him yesterday是一般过去时。I have seen him yesterday把现在完成时的动词和已经结束的时间混在一起,这种混用就是错误。just、already和yet则适合现在完成时:I have just finished、She hasn’t left yet。

例句

  1. I have seen that film.直到现在的经历
  2. She has lived here for three years.持续的状态
  3. for three years一段时间
  4. since 2020起点
  5. I have just finished.刚刚完成

常见错误

  • has went用了一般过去式,而不是分词。go的分词是gone。
  • since three years把一段时间当成了起点。一段时间要用for。

练习

先答完全部题目,再核对。你可以看为什么这个答案合适,然后重做一遍。

第 1 题,共 6 题

哪一句适合一个现在仍然重要的结果?

第 2 题,共 6 题

哪个短语指出起点?

第 3 题,共 6 题

补全这个句子。

She has lived here three years.

第 4 题,共 6 题

yesterday可以与现在完成时连用。

第 5 题,共 6 题

在现在完成时里,she用has。

第 6 题,共 6 题

将时间词语与本课中的规律配对。

for
since
yesterday

在 Surf Language 里继续

应用里还有听力、复习和更长的学习路径。这些页面始终免费。

上一课: 时间介词与地点介词全部免费英语课下一课: 第一条件句与第二条件句 打开应用

开始第一节课。

选择想学的语言。在浏览器或手机应用里开始。

免费开始学习