现在完成时与一般过去时
这两种形式都可以指向现在之前的事情。关键在于你如何呈现它:把它放在已经结束的过去场合,还是从现在出发谈经历、进展或结果?
把语法放进生活
你和新朋友聊旅行经历。
I have been to Lisbon. I went there last May.第一句介绍经历,第二句把那次旅行定位在已经结束的过去时间。
搭好句子
看清句型结构。
| 句型 | 结构与例句 |
|---|---|
| 经历 | have/has + past participleHave you ever worked abroad? |
| 具体发生时间 | past verbI worked in Singapore in 2023. |
知道什么时候用
真实情境中的用法。
01先判断时间范围
yesterday、last July、in 2020 等已结束的时间通常用一般过去时。时间范围一直延伸到现在时,可以用现在完成时。不能仅凭“对现在有影响”判断,因为一般过去时描述的事件也能造成现在的结果。
I lost my passport yesterday, so I cannot travel today.
02先说经历,再补细节
不指定某次场合、询问经历时,常用现在完成时。一旦追问某次旅行或某份工作的细节,对话自然会切换为一般过去时。这是观察视角改变,不是语法前后不一致。
Have you tried surfing? / Yes. I tried it in Bali. / Did you enjoy it?
03today 也可能对应不同视角
I have had three coffees today 统计今天截至现在喝了几杯;I had coffee with Mira today 描述今天某次已结束的见面。不能仅看到 today 就固定选一个时态,要判断是在累计截至现在的情况,还是叙述某次事件。
04英美用法差异
英式英语谈论带 just、already、yet 的最近事件时,常偏好现在完成时;美式英语也常用一般过去时。这两种用法都可能符合标准。但 yesterday 这样的明确已结束时间通常仍用一般过去时。
I have just eaten. / I just ate.
小地方,大不同
留意这些常见错误。
yesterday 指定已结束的过去场合。
需要过去分词;谈论已完成的到访经历时,been 很自然。
轮到你了
试一试,看看是否理解。
先自己选择,再查看解释。答错也没关系,重要的是理解原因。