← 返回博客
🇬🇧英语

英语过去时指南, 一般过去时 vs 现在完成时 vs 过去进行时

作者:Sandor更新于: 2026年6月10日阅读需 12 分钟

快速回答

一般过去时用于已结束的动作, 且发生在已结束的时间点(我昨天看到了)。现在完成时用于与现在有关联的过去动作(我看过)。过去进行时用于描述正在进行的背景动作(我当时在看)。过去完成时用于表示更早发生的过去(我已经离开了)。

英语的过去时最容易掌握的方法,是按“时间点”和“是否与现在有关”来选: 在已经结束的时间里发生并完成的动作,用 一般过去时 (I saw it yesterday),对现在仍有影响的过去动作,用 现在完成时 (I have seen it),作为背景正在进行的过去动作,用 过去进行时 (I was watching),要表示“在另一个过去之前更早发生”的动作,用 过去完成时 (I had left)。

英语也是全球学习人数最多的第二语言之一,把母语者和第二语言使用者合在一起,大约有 15亿总使用者(Ethnologue,第27版,2024)。这意味着这些时态选择不只是“语法”,它们是你在全球工作、旅行和媒体交流中保持清晰表达的日常工具。

如果你想要更多日常语境,把这份指南和真实听力一起用: 我们推荐的最适合用来学英语的电影能让你更容易听出时态差异。

你真正需要的四种过去形式(大多数时候)

英语表达过去不止一种方式,但大多数真实对话主要依赖四种核心形式。关键是别再把“过去等于 -ed”当成唯一思路,而要开始用“时间线”来思考。

本指南会用到这些形式:

  • 一般过去时: I watched, I went, I saw
  • 现在完成时: I have watched, I have gone, I have seen
  • 过去进行时: I was watching, I was going
  • 过去完成时: I had watched, I had gone

你也会听到 used towould 用来表达过去的习惯,还会在讲故事时听到 过去完成进行时 (I had been watching)。但就算你不频繁使用它们,也完全可以把英语说得很好。

一般过去时: 动作完成,时间也完成

一般过去时是叙述“发生了什么”的默认时态。如果时间已经结束,或你点明了一个已经结束的时间,一般过去时通常就是正确选择。

形式(规则与不规则)

  • 规则动词: 动词 + -ed
    watch → watched (WAHCHT), work → worked (WURKT)
  • 不规则动词: 形式变化
    go → went (WEHNT), see → saw (SAW), buy → bought (BAWT)

如果你需要复习不规则变化规律,我们的英语不规则动词指南能帮你少靠猜。

什么时候用

一般过去时用于:

  • 已完成的动作: “I finished the report.”
  • 已完成的一连串动作: “We ate, talked, and left.”
  • 明确的已结束时间标记: “I saw it yesterday.”

强烈提示一般过去时的时间词

这些词通常会把你推向一般过去时:

  • yesterday
  • last night / last week / last year
  • in 2019
  • two days ago
  • when I was a kid(已经结束的阶段)

例句:

  • “I met her last year.”
  • “They moved here in 2020.”
  • “We watched it two days ago.”

⚠️ 避免这个常见错误

在标准英语里,不要把现在完成时和已结束的时间词连用: 避免 "I have seen it yesterday." 更推荐 "I saw it yesterday."

发音提示: -ed 结尾

-ed 结尾常见有三种读法:

  • /t/,像 “watched” (WAHCHT)
  • /d/,像 “played” (PLAYD)
  • /ɪd/,像 “wanted” (WAHN-tid)

这对听力很重要。在快速语流里,“worked” 听起来几乎像 “workt”。

现在完成时: 过去与现在有关联

现在完成时(have/has + 过去分词)并不是像一般过去时那样的“过去时”。它更像一座连接过去和现在的桥。

Practical English Usage(Michael Swan,Oxford University Press)里,核心观点是: 当过去的动作与现在相关,并且时间不被当作“已结束”时,就用现在完成时。

形式

  • I/you/we/they have + 过去分词: “I have eaten” (eye hav EE-tn)
  • he/she/it has + 过去分词: “She has eaten” (shee haz EE-tn)

规则动词的过去分词通常和一般过去时一样(watched),但不规则动词可能不同(go → gone, see → seen)。

三种高频用法

1) 人生经历(不说具体时间)

  • “I have been to Japan.”
  • “Have you ever tried sushi?”

你不是在说什么时候发生的,而是在说你的人生里至少发生过一次。

2) 现在的结果

  • “I have lost my keys.”(结果: 我现在没有钥匙。)
  • “They have finished.”(结果: 现在已经完成了。)

3) 尚未结束的时间段

  • “I have worked a lot this week.”
  • “We have had three meetings today.”

“this week”和“today”都还没结束。

yet, already, just: 美式与英式的感觉差异

在英式英语里,现在完成时尤其常和 justalreadyyet 搭配:

  • 更偏英式: “I’ve just eaten.”
  • 美式常允许一般过去时: “I just ate.”

两种说法都很常见,也都能被理解。如果你在正式写作里拿不准,只要时间还没结束,用现在完成时通常更稳妥。

想了解更多地区差异,可以看美式英语 vs 英式英语

过去进行时: 进行中的背景动作

过去进行时(was/were + -ing)描述的是在某个过去时刻正在进行的动作。它常用来铺垫场景。

The Cambridge Grammar of the English Language(Huddleston and Pullum,Cambridge University Press)里,“体”(aspect)被视为英语表达事件如何展开的核心方式,而不只是表达发生时间。过去进行时是讲故事时最实用的体选择之一。

形式

  • I/he/she/it was + -ing: “I was driving” (eye wuz DRY-ving)
  • you/we/they were + -ing: “They were talking” (thay wur TAW-king)

最实用的模式: 被打断

  • “I was watching TV when you called.”
  • “She was sleeping when the alarm went off.”

过去进行时是背景,一般过去时是打断事件。

两个动作同时进行

  • “While I was cooking, he was cleaning.”
  • “They were arguing all night.”

这里的 “all night” 描述的是持续时间,不是像 “yesterday at 3” 那样的完成时间点。

不要这样用

不要用过去进行时来表达一个在明确已结束时间里完成的动作:

  • 别扭: “I was cooking dinner last night.”(可以说,但强调过程。)
  • 如果强调完成,更好: “I cooked dinner last night.”

按你希望听者脑中出现的画面来选: 看整体(一般过去时)还是看进行过程(过去进行时)。

过去完成时: 过去之前的过去

过去完成时(had + 过去分词)是一个排序工具。它告诉听者: “这件事发生得更早,早于我们正在谈的那个过去时刻。”

形式

  • “I had left.” (eye had LEHFT)
  • “They had seen it.” (thay had SEEN it)

什么时候需要

当两个过去事件如果不用它就可能让人误解时,用过去完成时:

  • “When I arrived, they had already left.”
  • “I had never tried it before that day.”

如果你说 “When I arrived, they left,” 听起来可能像是你到了之后他们才离开。过去完成时能消除这种歧义。

什么时候可以不用

如果你按顺序讲事情,一般过去时通常就够了:

  • “I woke up, got dressed, and left.”

过去完成时最有用的场景,是你在故事里突然往回跳到更早的时间。

实用时间线: 如何快速选择

你在说话时没时间在脑子里跑一遍语法规则。用下面这些快速问题就够了:

  1. 你有没有说一个已结束的时间?(yesterday, last week, in 2019)
    → 用 一般过去时

  2. 时间还没结束,或过去对现在仍相关吗?(today, this week, 现在的结果, 人生经历)
    → 用 现在完成时

  3. 你是在描述某个过去时刻正在进行的动作吗?
    → 用 过去进行时

  4. 你在比较两个过去事件,需要说明哪个先发生吗?
    → 用 过去完成时

这也是电影对白特别有用的原因: 角色会不断切换时态,来管理听者此刻知道什么。如果你想用更结构化的方法练这个能力,可以搭配如何用电影学语言

你在电影和电视剧里会听到的真实例子

母语者在对话里选择时态,是为了管理社交含义,不只是为了表达时间。下面这些模式出现频率非常高。

“Did you…?” vs “Have you…?”

  • Did you see that?” 往往指某个具体时刻,通常很近,而且说话者认为这事确实发生了。
  • Have you seen that movie?” 往往指到目前为止的人生经历。

在美式口语里,“Did you eat yet?” 非常常见,尽管 “Have you eaten yet?” 也完全正确。如果你只能先学一个,就先学你目标口音里最常听到的那个版本。

用现在完成时播报“新消息”

英语常用现在完成时来宣布带有当前结果的新信息:

  • “They have arrested him.”
  • “I have found it.”

然后叙述细节时会切回一般过去时:

  • “They arrested him last night at 11.”

这种“先标题后细节”的模式在新闻报道和警匪程序剧里很常见。

用过去进行时表达礼貌和缓和语气

过去进行时可以让问题听起来不那么直接:

  • “I was wondering if you could help.” (eye wuz WUHN-der-ing)

它并不是真的在谈过去,而是一种礼貌策略,让请求显得不那么尖锐。这也符合语用学里经典的礼貌理论(Brown and Levinson,Politeness: Some Universals in Language Usage,Cambridge University Press)。

学习者常见问题(以及修正方法)

问题 1: 过度使用现在完成时

很多学习者会把任何过去事件都用现在完成时来表达。英语不是这样运作的。

修正: 如果你能用一个已结束的时间回答 “When?”,就换成一般过去时。

  • 正确: “I saw him yesterday.”
  • 正确: “I have seen him recently.”(没有已结束时间)

问题 2: 搞混 “been” 和 “gone”

  • “He has gone to the store.”(他现在在那边,不在这里。)
  • “He has been to the store.”(他某个时候去过并回来了,或只是表达经历。)

这是常见的听力陷阱,因为在快速语流里两者听起来很像。

问题 3: 在故事里到处用过去完成时

过去完成时不是“更高级的一般过去时”。它是为特定任务服务的工具。

修正: 只有当你跳回更早的事件,或事件先后顺序不清楚时,才用过去完成时。

问题 4: 把 “used to” 和一般过去时混用

  • “I used to live here.”(过去的习惯或状态,现在不成立)
  • “I lived here in 2020.”(事实,是否仍成立取决于语境)

“Used to” 很适合在个人故事里做背景铺垫。

迷你表格: 可直接套用的形式

一般过去时 vs 现在完成时(同一动词)

含义例句发音
已完成的过去I watched it yesterday.eye WAHCHT it YES-ter-day
经历/结果I have watched it.eye hav WAHCHT it

过去进行时 + 被打断

背景(进行中)打断事件发音
I was drivingwhen you calledeye wuz DRY-ving, when yoo KAWLD
They were talkingwhen she walked inthay wur TAW-king, when shee WAWKT in

过去完成时表达更早的过去

更早的事件较晚的过去时刻发音
They had leftwhen I arrivedthay had LEHFT, when eye uh-RYVD
I had never seen itbefore that dayeye had NEH-ver SEEN it

文化提示: “时间词”也是社交词

在真实英语里,时间词常常带有社交含义。

说 “I have sent it” 可能暗示“你现在应该已经收到了”,在工作聊天里可能会显得有点催。说 “I sent it” 往往更中性,尤其是对方可能还没来得及查看时。

所以时态选择在邮件、客服和团队协作里也很重要,不只是考试。如果你也想在非正式场景里听起来更自然,可以看看我们的英语俚语指南,了解时态如何和俚语、语气一起使用。(如果你也好奇强烈语言在过去叙事里怎么运作,我们的英语脏话指南会讲语境和语域。)

🌍 为什么母语者会很快纠正 'I have seen it yesterday'

母语者会把 "yesterday" 和 "last year" 这类词当作一个封闭盒子。一旦你把事件放进一个封闭的时间盒子里,英语通常就要用一般过去时。现在完成时会让人感觉盒子还开着,比如 "today" 或 "this week",或者像你在谈没有时间盒子的人生经历。

练习方法: 通过场景学过去时,而不是通过孤立句子

如果你只做孤立练习题,你可能“知道规则”,但在对话里还是会卡住。场景会逼你在速度压力下做时态选择。

一个简单流程:

  1. 看一段短片,写下你听到的每个过去动词。
  2. 给每个动词标注: 已结束时间、现在结果、进行中的背景、更早的过去。
  3. 重看并跟读那句台词,保持同样的节奏和重音。

如果你喜欢结构化的重复练习,把片段学习和间隔复习结合起来。我们的语言学习 Anki 指南会讲如何把真实句子做成卡片,同时避免背一堆没用的句子。

写作和口语的快速检查清单

  • 如果你说了 yesterday/last/in 2019/ago,用 一般过去时
  • 如果你表达的是 经历/结果/未结束时间,用 现在完成时
  • 如果你在铺陈场景,用 过去进行时
  • 如果你需要表达“比那更早”,用 过去完成时

为了让练习更贴近真实用法,也要把数字和时间表达一起练,因为它们会不断触发时态选择。我们的英语数字指南很适合搭配日期、年份和常用时间短语。

最终要点

英语过去时不在于背名称,而在于为听者选择一条时间线: 已结束时间里的完成事件用一般过去时,与现在相关的过去用现在完成时,进行中的背景动作用过去进行时,更早的过去用过去完成时。你一旦开始在真实对话里留意时间标记和叙事顺序,“该用哪个时态”就会变成快速、自动的选择。

常见问题

一般过去时和现在完成时有什么区别?
一般过去时强调动作已完成, 且时间范围已结束: 'I met her last year.' 现在完成时把过去与现在联系起来, 常表达经历或结果: 'I have met her.' 如果说了具体时间(昨天、2019年), 通常要用一般过去时。
可以说 'I have seen him yesterday' 吗?
在标准美式和英式英语里, 一般不可以。'yesterday' 是已结束的时间标记, 通常用一般过去时: 'I saw him yesterday.' 现在完成时更常搭配未结束或不具体的时间(今天、本周、最近)或不说时间: 'I have seen him recently.'
什么时候用过去完成时(had + 过去分词)?
当你需要说明两个过去事件中, 一个发生得更早时用过去完成时: 'When I arrived, they had already left.' 如果先后顺序已很清楚, 或按顺序叙述, 一般过去时往往就够了: 'I arrived and they left.'
过去进行时最常见的错误是什么?
学习者常把过去进行时用在已完成的动作上。过去进行时描述当时正在进行的背景动作: 'I was cooking when you called.' 电话打断了做饭。若动作已完成且时间已结束, 用一般过去时更合适: 'I cooked dinner last night.'
美式英语和英式英语在过去时用法上有差别吗?
有, 但不大。美式英语有时会用一般过去时, 而英式英语可能更偏好现在完成时, 尤其搭配 'just/already/yet': 美式 'Did you eat yet?' 对比英式 'Have you eaten yet?' 两种都能理解。正式写作中, 遇到 'yesterday' 这类已结束时间词, 核心规则一致。

来源与参考资料

  1. Cambridge Dictionary, 'past tense' 及相关时态词条, 访问于 2026 年
  2. Oxford Learner's Dictionaries, 动词时态与语法词条, 访问于 2026 年
  3. British Council, LearnEnglish: 过去时讲解与练习, 访问于 2026 年
  4. Ethnologue, 第 27 版, 2024 年

用 Wordy 开始学习

看真实电影片段,边看边积累词汇。免费下载。

在 App Store 下载在 Google Play 获取可在 Chrome 网上应用店获取

更多语言指南