現在簡單式 vs 現在完成式常見問題(FAQ)

現在簡單式 vs 現在完成式常見問題(FAQ)

現在簡單式描述習慣、事實與固定狀態;現在完成式則表示過去發生的事情與現在仍有關聯,例如完成結果、人生經驗或持續到現在的狀態。

不可以。yesterday 是明確且已結束的過去時間,應搭配過去式。

錯誤:I have finished the report yesterday.
正確:I finished the report yesterday.
(我昨天完成了報告。)

for+一段時間,用來說明動作持續多久;since+時間起點,用來說明動作從何時開始。

I have worked here for three years.
(我已經在這裡工作三年了。)

I have worked here since 2023.
(我從 2023 年起就在這裡工作。)

already 表示「已經」,常用於肯定句,通常放在 have/has 與過去分詞之間;yet 表示「尚未」或「已經」,常放在否定句或疑問句的句尾。

She has already submitted the form.
(她已經提交表格了。)

She has not submitted the form yet.
(她還沒有提交表格。)

可以。ever 表示「曾經」,常用於疑問句;never 表示「從未」;before 表示「以前」,通常放在句尾。這些詞都能用來描述截至目前的人生經驗。

I live here 只說明目前住在這裡;I have lived here 通常搭配 for 或 since,強調居住狀態從過去持續到現在。

I live here.
(我住在這裡。)

I have lived here for five years.
(我已經在這裡住五年了。)

不一定。只要句子要表達完成結果、人生經驗,或從過去持續到現在的狀態,即使沒有時間副詞,也可以使用現在完成式。

I have lost my key.
(我的鑰匙弄丟了。)

當句中出現 yesterday、last week、two days ago、in 2020 等明確且已結束的過去時間,應使用過去式。如果重點是事情截至目前的結果或經驗,且沒有指出明確的過去時間,才適合使用現在完成式。