一般过去时和完成时
判断要用一般过去时(如 “were saved”)还是现在完成时(如 “have been saved” / “has been saved”)时,应该根据哪些时间状语或语义线索?
我们从语义特征 + 常见时间副词两个角度来系统说明这两种时态的适用条件和信号词。
一般过去时(如 “were saved”)
表示 已经结束的具体过去事件,通常伴随明确的过去时间点或时段。
⏰ 典型时间副词:
-
yesterday
-
in 2001 / last year / two days ago
-
when I was young
-
at that moment
-
in the end
-
finally
-
once upon a time
📌 示例:
-
They were saved in the end.(事情发生完了)
-
The crew were rescued last night.
-
The plane crashed two years ago, but all passengers were saved.
✳️ “in the end” 强调故事终点,说明动作完成于明确的过去,因此用一般过去时。
现在完成时(have/has been saved)
强调过去某个动作到现在的结果仍然有效,或经历到目前为止。
⏰ 常见时间副词(暗示时间“未结束”或“到目前为止”):
-
already
-
just
-
yet(用于否定/疑问句)
-
ever / never
-
so far / up to now / until now
-
recently / lately
-
this week / this year(如果还没结束)
-
today(当天尚未结束时)
📌 示例:
-
The crew have been saved just now.
-
All the crew have been rescued so far.
-
She has never been in a helicopter.
-
Several passengers have already been saved.
✳️ 没有“明确过去时间点”,而是强调“结果”、“现在的关联性”。
对比小结表格:
时间状语例子 | 用时态 | 原因 |
---|---|---|
in 1999 / yesterday | 一般过去时 | 明确过去时间 |
in the end / finally | 一般过去时 | 描述故事终结 |
just / already | 完成时 | 强调刚刚完成 |
so far / until now | 完成时 | 描述过去到现在这段时间内的结果 |
this year (还没结束) | 完成时 | 年度还在进行,结果 relevant |
last week | 一般过去时 | 明确时间点,动作已完成 |
实战对比:
-
All the crew were saved in the end. ✅
→ 过去某个具体时点,救援完成 -
All the crew have been saved. ✅
→ 不强调时间点,而强调“现在已处于安全状态” -
All the crew have been saved so far. ✅
→ 到目前为止,救援结果成立,但救援行动可能仍在继续
终极判断规则:
情况 | 用什么时态 |
---|---|
明确过去时间点 | 一般过去时 |
动作发生在过去,但影响到现在 | 现在完成时 |
没有时间状语但强调状态结果 | 现在完成时 |
结局式描写(如 in the end) | 一般过去时 |