在學英文的過程中,「現在完成式」幾乎是每個人都會卡關的一個文法。
看起來像過去,又跟現在有關,句型也跟一般時態不太一樣,常常學過卻還是用不太出來。
其實現在完成式沒有想像中複雜,關鍵不在公式,而是在「時間的感覺」。
只要抓到它是在描述「已經發生,但和現在有關」的情境,就比較不容易混淆。
內容目錄
Toggle現在完成式是什麼?先看句子長什麼樣
在理解用法之前,可以先看看現在完成式「長什麼樣」,會比較好抓重點。
現在完成式有一個固定的句型:have / has + 動詞第三型(p.p.)
它不只是單純描述「過去做過某件事」,而是強調這件事情和現在之間的關聯。
先看例句:
- I have finished my homework.
(作業已經完成 → 現在是完成的狀態) - She has lived here for five years.
(她住在這裡五年 → 現在還住在這裡)
這兩句話中,have finished、has lived ,就是現在完成式出現的位置。
把句子拆開來看會更清楚:
| I | have | finished | my homework |
| 主詞 | 助動詞 | 動詞第三型(p.p.) | 受詞 |
在這句話中: have + finished,就是現在完成式
也就是說,現在完成式不是一個單字,而是「助動詞 + 動詞第三型」這一段結構。
👉看到「have / has + 動詞第三型」,就可以判斷是現在完成式
現在完成式怎麼用?4 種常見情境整理
當知道現在完成式的句型後,可以先抓一個重點:現在完成式在講的是「現在的結果」,不是發生的時間。
帶著這個概念,下面整理幾種常見的使用情境。
1.表示人生經驗(曾經做過)
用來描述過去是否有過某種經驗,不強調發生的時間。
• I have been to Japan.(我去過日本)
• She has never tried sushi. (她從來沒有吃過壽司)
常見搭配:ever、never
判斷方式:在講「有沒有這個經驗」,不是什麼時候發生
2.結果(事情已經發生)
用來表示某件事已經發生,重點在「現在的狀態已經改變」。
• I have finished my work.(我已經把工作做完了 → 現在是完成狀態)
• He has just left.(他剛剛離開 → 現在人不在)
常見搭配:already、just
判斷方式:事情已經發生,現在的情況和之前不一樣
3.持續(從過去到現在)
用來描述一件事情從過去開始,一直持續到現在。
• I have studied English for 3 years.(我已經學英文三年了)
• She has lived here since 2020.(她從 2020 年就一直住在這裡)
常見搭配:for、since
判斷方式:這件事「現在還在持續」
4.變化(狀態改變)
描述某種變化,或現在和以前不同的狀態。
• The weather has become colder.(天氣變冷了)
• My English has improved.(我的英文變好了)
常見搭配:become、improve、change
判斷方式:現在的狀態和以前不一樣
現在完成式怎麼用才不會錯?常見用法整理
前面已經知道現在完成式長什麼樣,也了解什麼情況會用。
接下來可以把重點放在一件事:句子實際是怎麼組出來的。
現在完成式的基本結構是「主詞 + have / has + 動詞第三型」,
其中比較容易卡的,通常是 have / has 的選擇,以及動詞的變化。
have 和 has 的差別
在主詞:
• I / You / We / They → 用 have
• He / She / It → 用 has
例如:
• They have finished the work.
• He has finished the work.
只要主詞是單數第三人稱,就會使用 has。
動詞的變化
在現在完成式中,have / has 後面一定要接動詞第三型(p.p.)。
例如:
• I have eaten breakfast.
• She has gone home.
這也是現在完成式和其他時態最明顯的差別之一。
把這兩個條件合在一起,就能組出完整句子:
• I have cleaned my room.
(我已經把房間整理好了)
• She has learned a lot this year.
(她今年學了很多東西)
掌握 have / has 的用法,以及動詞第三型的變化,
現在完成式的句型其實就不難使用了。
👉 把現在完成式從「看懂」練到「用得出來」,就在 Winning Plus
現在完成式常見錯誤:和過去式差在哪?
現在完成式最常讓人混淆的地方,就是和過去式的差別。
很多時候句子看起來都對,但用錯時態,意思其實會不一樣。
可以先抓一個最簡單的判斷方式:有沒有在講「什麼時候發生」。
先看一組句子:
從例句可以看出,差在重點不同。
前一句是在說「昨天發生的事」,時間很明確;
後一句則是在表達「有過這個經驗」,重點不在什麼時候。
再看另一個情境:
這裡的差別會更明顯。
過去式只是把事情說出來,
而現在完成式會讓人直接聯想到現在的狀態。
也因為這個差別,最常出現的錯誤就是把兩種用法混在一起。
例如: I have seen this movie yesterday.
這句會出錯,是因為「yesterday」已經把時間說得很清楚,
這時候就應該用過去式,而不是現在完成式。
可以用一個簡單方式幫自己判斷:
如果句子裡出現像 yesterday、last year、two days ago 這種明確時間,
通常會用過去式。
如果沒有特別提時間,而是在講經驗或現在的結果,
就會用現在完成式。
現在完成式常搭配哪些關鍵字?
| 關鍵字 | 中文意思 | 用法 | 例句 |
| already | 已經 | 常用於肯定句,放在 have / has 後面 | I have already finished my work.(我已經把工作做完了) |
| yet | 還沒/了嗎 | 常用於否定句、疑問句,多放在句尾 | I haven’t finished my work yet.(我還沒完成工作)Have you finished your work yet?(你完成了嗎?) |
| just | 剛剛 | 表示事情剛發生,放在 have / has 後面 | He has just left.(他剛剛離開) |
| ever | 曾經 | 常用於疑問句,詢問經驗 | Have you ever been to Japan?(你有去過日本嗎?) |
| never | 從未 | 表示完全沒有發生過 | I have never tried that.(我從來沒有試過那個) |
現在完成式怎麼練?用簡單句型快速上手
理解用法之後,其實不用再背規則,
重點是開始用幾個固定句型去練習。
可以先從這幾種句型開始:
• I have been to ____.(我去過__)
• I have finished ____.(我已經完成__)
• I have studied ____ for ____.(我已經學__多久了)
• I have just ____. (我剛剛__)
接下來的練習方式可以很簡單:
直接把自己的生活內容代進去,一天練 3~5 句就好。
例如:
今天做過的事、最近的改變、或是累積的經驗
• I have finished my report.(我已經把報告完成了)
• I have watched that movie.(我看過那部電影)
• I have started a new habit.(我開始了一個新習慣)
也可以試著把同一件事情換不同說法,
會更清楚現在完成式和過去式的差別:
• I saw that movie last week.(我上週看了那部電影)
• I have seen that movie.(我看過那部電影)
比起記一堆文法,用這種方式反覆練習,會更容易養成語感。
👉 不只看懂現在完成式,在 Winning Plus 把句型練到能自然用出來