🚀 一堂搞懂!英文 Perfect Tenses 全部一次學會(超好上手)

Author:

Perfect Tenses(完成式)一次搞懂:你會清楚分辨 Present PerfectPast PerfectFuture Perfect,以及它們各自的進行式用法(have been + V-ing)。看完這篇,你就能用對句型、用對時間感,寫作與口說都不再卡。

我第一次教英文完成式時,最有感的不是規則本身,而是「學生腦中那條時間線」怎麼被拉直。那天我讓大家用同一個日常動作做練習:cook / eat / drink / sleep。結果很有趣——大家其實都會用片語,但一遇到「要不要加 been?」、「要不要用 had?」就開始混亂。

我後來把影片逐字對照句型,發現一個核心線索:Perfect Tenses 的共同點都在 have + 過去分詞(或 have been + V-ing)。只要你能把動作放進正確的時間位置,所有句型就會像積木一樣自然卡上。

📝 目錄

✅ Perfect Tenses 到底在講什麼?(你需要的只有一條公式)

Perfect Tenses 的核心:把動作連到「某個時間點之前」,重點不是動作本身,而是「在那之前已經完成 / 一直持續」。

在英文裡,Perfect Tenses 幾乎都長得很像:have + 過去分詞(V3)。進行式則是:have been + V-ing。所以你看到 have/has/had/will have,基本上就等於看到時間連接器。

你可以先把「進行式」當成一句話:強調持續的時間感(例如一直在做、一直到某個時間點仍在做或剛做完)。這會直接解決你最常遇到的句型猶豫。

  • Present Perfect:have/has + V3(到現在為止的完成或持續)
  • Past Perfect:had + V3(在過去某時間點之前就已完成)
  • Future Perfect:will have + V3(到未來某時間點之前就會完成)
  • 進行式:have been / had been / will have been + V-ing(強調持續)

⏳ Present Perfect:到現在為止,你「已經怎樣了」

Present Perfect 用來表達:到現在為止已經發生(完成)或一直持續到現在(持續)

你可以直接套用:I have cooked / She has eaten 這種結構。以日常動作來看就很直覺:我「已經煮了」、「已經吃了」。但注意——這裡的時間重點是「現在之前」,不一定要說明確的過去時間點。

如果你想強調「一直在做」,就用進行式:I have been cooking。例如你可以想像我在廚房忙了很久:到現在為止,我一直在煮。

句型 結構 時間感
Present Perfect have/has + V3 到現在為止:已完成 / 已發生
Present Perfect Continuous have been + V-ing 到現在為止:一直持續

我在教學時最常用的例子就是「吃、喝、睡、醒來」這類動作:I have eatenI have been eatingI have drunk waterI have been drinking water。你會發現,只要你抓到「到現在」這個界線,句子就自然順。

同樣地,像 sleep / wake up / walk / run / drive 也都能套進 Present Perfect 的框架。你不是在背句子,而是在練「時間連結」能力。

🧠 Past Perfect:過去某一刻之前,你「已經怎樣了」

Past Perfect 用來表達:在過去的某個時間點之前,就已經完成或持續到那時

句型很簡單:had + V3。例如 I had cookedshe had eaten。你可以把它想成:過去發生的事件 A 之後,事件 B 已經更早完成了,所以要用 Past Perfect。

進行式則是:I had been cooking。當你想表達「在過去某段期間一直在做」時,這個形式會非常好用。它把持續感也一起放進時間線。

  • Had + V3:把「更早完成」講清楚
  • Had been + V-ing:把「更早持續」講清楚
  • 常見搭配:兩個過去事件,先發生的用 Past Perfect

我曾把「讀書、寫作、學習」也用同樣邏輯帶過:I had readI had writtenI had studied。如果你要強調那段時間一直在做,就說 I had been readingI had been writingI had been studying

你會越練越發現:Perfect 系列不是背單字,而是把時間順序說得更準。當句子更準,你的英文就會更像在「敘述真實經歷」。

🚀 Future Perfect:到未來某時點之前,你「會已經完成」

Future Perfect 用來表達:到未來某個時間點之前,事情將會完成

句型是:will have + V3。例如 I will have cookedyou will have eaten。你可以把它想成一個「未來的截止線」。截止線之前完成,就用 Future Perfect。

若你想強調持續到那個未來點,就用:will have been + V-ing。例如 I will have been cooking,意思是到未來某個時間點為止,我一直在煮(持續到那時)。

用途 完成 持續
現在之前 have/has + V3 have been + V-ing
過去之前 had + V3 had been + V-ing
未來之前 will have + V3 will have been + V-ing

我喜歡用「工作、玩、看、聽、說」這類動作來示範:I will have workedI will have playedI will have watchedI will have listenedI will have talked。如果你要加持續感,就把它換成 will have been + V-ing

learn / teach 也很適合:I will have learnedI will have taught;持續版是 I will have been learningI will have been teaching。當你能自己把動作放進時間線,你就真的掌握了。

📌 一次搞懂:把 Perfect Tenses 用在你每天會說的句子裡

最有效的練法:用同一組動詞,依序套 Present Perfect / Past Perfect / Future Perfect。你不需要換腦袋,只要換時間連接器。

我在課堂上會用一串「日常動作」當練習骨架:cook, eat, drink, sleep, wake up, walk, run, drive, read, write, study, work, play, watch, listen, talk, learn, teach……再把它們依時間切換。

你可以直接照抄下面的練習方向(把動詞換成你自己的):

  • 現在到現在為止:I have cooked / I have been cooking
  • 過去某點之前:I had cooked / I had been cooking
  • 未來某點之前:I will have cooked / I will have been cooking

如果你覺得「過去分詞」很卡,請把它當成你句型的一部分來記:例如 cook → cookedeat → eatendrink → drunk。你不必一次背完所有動詞,但要確保你用到的那幾個你會寫、會說、會拼。

另外,進行式(have been / had been / will have been)不要硬用。當你想表達「一直在做」或「持續一段時間」時才用,這樣你的英文會更自然。

✅ 重點整理:Perfect Tenses 一次到位

你已經能用 Perfect Tenses 了:現在用 have/has、過去用 had、未來用 will have;想強調持續就加 been + V-ing。

把它當成時間線上的三個檔位:現在線、過去線、未來線。然後再決定你要講「完成」還是「持續」。一旦你能做這兩個決定,所有句子就會從混亂變成可控。

  • Present Perfect:have/has + V3(到現在為止)
  • Past Perfect:had + V3(過去某點之前)
  • Future Perfect:will have + V3(未來某點之前)
  • 進行式:have been / had been / will have been + V-ing(強調持續)

我會用一句話收尾:你不是在學一堆時態,你是在學「把時間講清楚」。時間講清楚了,英文自然就順。

❓ FAQ:Perfect Tenses 常見疑問

⏱️ Present Perfect 和 Past Simple 差在哪?

Present Perfect 著重到現在為止的結果或持續,Past Simple 則是直接講過去某個明確時間點的動作。

Present Perfect 常見用法是你不強調「何時發生」,而是強調「現在的狀態/經驗」。Past Simple 則通常會搭配明確時間(例如 yesterday、last week、in 2019)。只要你問自己:我是在講「現在的結果」還是「過去的那個時間點」,就能選對。

🧩 什麼時候要用 had been + V-ing?

當你要強調過去某段時間一直在做,並且那個持續在另一個過去事件之前就已發生,就用 had been + V-ing。

had been + V-ing 是 Past Perfect Continuous,會同時帶出「更早」與「持續」。你可以用兩事件句型來檢查:先發生且一直持續的那個,用 had been + V-ing;後發生的那個,用一般過去式。

🚀 Future Perfect 和 Future Simple 怎麼分辨?

Future Perfect 是在未來某個時間點之前會完成;Future Simple 只是未來將會做

如果你句子裡有「到明天/到下週/到某個日期之前」這種截止線,你通常就需要 Future Perfect(will have + V3)。如果只是單純說「我明天會做」,不強調截止前完成,就用 Future Simple。

📺 來源影片參考