现在完成时

由 have/has + 过去分词构成,表示过去发生并已完成、但对现在有影响的动作,或从过去持续到现在的动作或状态。

一、核心规则

  1. 影响性用法(已完成):动作在过去完成,说话人强调的是它对现在的影响或结果,如 I have lost my pen.(现在没笔用)。
  2. 持续性用法(未完成):动作从过去开始,一直持续到现在,可能继续也可能刚结束,如 We have lived here quite a number of years.
  3. 与现在有关联是它的本质:现在完成时属于”现在”的时间范畴,不能与明确的过去时间状语连用。
  4. 常见标志词:already, yet, just, ever, never, before, so far, up to now, in the past/last few years, recently, lately, twice/three times 等。
  5. since 与 for:since + 时间点/从句(从句用一般过去时),for + 时间段。
  6. 特殊结构:This is the first time (that) sb has done…;It is/has been + 时间段 + since + 一般过去时。
  7. 瞬间动词的处理:die, come, go, buy, join 等不能与 for/since 表持续的时间状语连用,须改用 be dead, be here, have been in 等延续性表达。

二、结构与公式

  • 肯定:have/has + 过去分词。
  • 否定:have/has not (haven't/hasn't) + 过去分词。
  • 疑问:Have/Has + 主语 + 过去分词?
  • 被动:have/has been + 过去分词(如 The work has been finished.)。
  • 时间标志公式:have done + for + 时间段 / since + 时间点。

三、典型例句

  1. He has seen the film several times.(这部电影他已看了好几次。)——重复经历,强调现在熟悉。
  2. I have lost my pen, so I have to buy one.(我丢了钢笔,所以得去买一枝。)——对现在的影响。
  3. We have lived here quite a number of years.(我们在这里住了很多年了。)——持续到现在。
  4. This is the first time that I have visited the Great Wall.(这是我第一次参观长城。)——This is the first time 后接现在完成时。
  5. Great changes have taken place in my hometown in the past ten years.(过去十年我的家乡发生了巨大变化。)——in the past + 时间段。
  6. The window hasn’t been cleaned for weeks.(这窗户好几周没擦了。)——现在完成时的被动式。

四、易错点

  1. ✗ He has died for three years. → ✓ He has been dead for three years. 瞬间动词不能与 for 连用。
  2. ✗ I have seen him yesterday. → ✓ I saw him yesterday. 有明确过去时间状语时用一般过去时。
  3. ✗ I have finished my homework two hours ago. → ✓ I finished my homework two hours ago. ago 与现在完成时不相容。
  4. ✗ It is three years since he has joined the army. → ✓ It is three years since he joined the army. since 从句用一般过去时。

五、高考考点

  1. 时态辨析:与一般过去时的区分是最高频考点(影响有无、时间状语允许与否),见 一般过去时 vs 现在完成时。
  2. 标志词定位:so far, in the past few years, over the years, recently 等提示现在完成时。so far 并非绝对只能连用现在完成时,判据是它所修饰的谓语是否”持续到现在”:① 表示”迄今”且动作/状态一直持续到现在 → 用现在完成时(So far there has been no bad news.);② 只表示现在一时的状态(如名次、比分)→ 用一般现在时或现在进行时(We’re lying ninetieth in the competition so far.);③ 心理状态/感觉类动词(like, hate, understand, seem, appear 等)不宜用于完成时 → 改用一般现在时。
  3. 被动语态叠加:如 It hasn’t been cleaned for weeks. / This novel has been translated into several languages.
  4. 写作升级:议论文中用 has been doing / has made great progress 陈述现状与趋势,比一般现在时更有力,见 语法在写作中的升级用法。

六、对比与延伸

七、来源

  • 语法体系/英语语法网专栏/动词时态/00327-英语动词时态详解:现在完成时.md
  • 语法体系/英语语法网专栏/动词时态/04303-英语动词时态用法归纳:现在完成时.md
  • 语法体系/英语语法网专栏/动词时态/00179-现在完成时与一般过去时的区别.md
  • 语法体系/英语语法网专栏/动词时态/00721-与现在完成时连用的10类标志.md
  • 语法体系/英语语法网专栏/动词时态/02238-so far必须要连用现在完成时吗.md
  • 语法体系/英语语法网专栏/动词时态/03202-so far只能与现在完成时连用吗.md
作者:admin  创建时间:2026-09-11 18:04
最后编辑:admin  更新时间:2026-10-06 00:48