들어가기 앞서
현재완료(Present Perfect)는 많은 영어 학습자들이 가장 어려워하는 문법 중 하나입니다.
한국어에는 이에 정확히 대응하는 시제가 없기 때문입니다.
“나는 일본에 가봤어요”, “방금 점심을 먹었어요”, “3년 동안 여기에 살고 있어요” —
이 모든 표현이 현재완료로 가능합니다.
현재완료의 핵심은 과거의 일이 현재와 어떤 관련이 있다는 것입니다.
이 원리를 이해하면 현재완료의 모든 용법이 자연스럽게 연결됩니다.
이 글을 읽고 나면:
- 현재완료의 기본 구조(have/has + p.p.)를 완벽히 만들 수 있습니다.
- 경험·완료·계속·결과 4가지 용법을 정확히 구분할 수 있습니다.
- 현재완료와 과거시제의 핵심 차이를 이해할 수 있습니다.
- ever/never/already/yet/just/since/for와 함께 쓰이는 패턴을 익힐 수 있습니다.
- 현재완료진행형(have been + -ing)의 의미와 사용법을 익힐 수 있습니다.
1. 현재완료의 기본 구조
plain[주어] + [have / has] + [과거분사(p.p.)]
| 주어 | have/has |
|---|---|
| I / You / We / They | have |
| He / She / It | has |
축약형
plainI have → I've
You have → You've
He has → He's (주의: He is와 혼동!)
She has → She's
We have → We've
They have → They've
plainI've lived in Seoul for five years.
나는 서울에 5년 동안 살았어요.
She's visited Japan three times.
그녀는 일본을 세 번 방문했어요.
We've already had lunch.
우리는 이미 점심을 먹었어요.
2. 과거분사(p.p.) 만들기
규칙 동사는 과거형과 동일하게 -ed를 붙입니다.
불규칙 동사는 9강에서 익힌 불규칙 과거분사를 씁니다.
규칙 동사 과거분사
plainwork → worked
visit → visited
finish → finished
study → studied
play → played
불규칙 동사 과거분사 — 핵심 50개
| 동사 | 과거형 | 과거분사(p.p.) |
|---|---|---|
| be | was/were | been |
| go | went | gone |
| come | came | come |
| do | did | done |
| have | had | had |
| see | saw | seen |
| eat | ate | eaten |
| give | gave | given |
| take | took | taken |
| know | knew | known |
| make | made | made |
| say | said | said |
| get | got | gotten/got |
| think | thought | thought |
| buy | bought | bought |
| find | found | found |
| keep | kept | kept |
| leave | left | left |
| meet | met | met |
| write | wrote | written |
| speak | spoke | spoken |
| break | broke | broken |
| drive | drove | driven |
| read | read | read |
| run | ran | run |
| sleep | slept | slept |
| feel | felt | felt |
| begin | began | begun |
| drink | drank | drunk |
| fly | flew | flown |
| grow | grew | grown |
| choose | chose | chosen |
| fall | fell | fallen |
| forget | forgot | forgotten |
| hear | heard | heard |
| hold | held | held |
| lose | lost | lost |
| pay | paid | paid |
| send | sent | sent |
| show | showed | shown |
| sit | sat | sat |
| stand | stood | stood |
| tell | told | told |
| teach | taught | taught |
| wear | wore | worn |
| win | won | won |
| build | built | built |
| bring | brought | brought |
| catch | caught | caught |
| cut | cut | cut |
3. 현재완료의 핵심 개념 — 과거와 현재의 연결
현재완료는 과거에 일어난 일이 현재와 관련이 있을 때 사용합니다.
plain과거 ─────────────────────── 현재
[사건 발생] →→→→→→→→→ [현재에 영향/관련]
반면 과거시제는 완전히 끝난 과거를 나타내며 현재와의 연결이 없습니다.
plain과거 ────○────────────────── 현재
[완결된 사건] (현재와 무관)
4. 현재완료의 4가지 용법
용법 ① 경험 (~해본 적이 있다)
살면서 경험한 일을 나타냅니다. 언제 했는지보다 경험 자체가 중요합니다.
plainI have been to Japan.
나는 일본에 가본 적이 있어요.
She has tried sushi before.
그녀는 전에 초밥을 먹어본 적이 있어요.
Have you ever seen the Northern Lights?
오로라를 본 적이 있어요?
I've never ridden a horse.
나는 말을 타본 적이 없어요.
He has met the president.
그는 대통령을 만난 적이 있어요.
경험 표현과 자주 쓰이는 부사
plainever (지금까지 — 의문문에서)
never (한 번도 ~ 않다)
before (전에)
once (한 번)
twice (두 번)
three times (세 번)
many times (여러 번)
plainHave you ever eaten Korean food?
한국 음식을 먹어본 적 있어요?
Yes, I have. I've eaten it many times.
네, 있어요. 여러 번 먹어봤어요.
No, I've never tried it.
아니요, 한 번도 먹어본 적이 없어요.
용법 ② 완료 (~방금/이미 ~했다)
최근에 완료된 일이 현재에 영향을 미칠 때 사용합니다.
plainI've just finished the report.
방금 보고서를 끝냈어요.
She has already left the office.
그녀는 이미 사무실을 떠났어요.
Have you eaten yet?
이미 먹었어요?
I haven't eaten yet.
아직 먹지 않았어요.
The train has just arrived.
기차가 방금 도착했어요.
완료 표현과 자주 쓰이는 부사
plainjust (방금, 막)
already (이미 — 긍정문·의문문)
yet (아직 — 부정문·의문문)
recently (최근에)
lately (요즘)
plainI've just got home.
방금 집에 왔어요.
Have you finished yet?
벌써 다 끝냈어요?
I haven't finished yet.
아직 끝내지 않았어요.
They've already solved the problem.
그들은 이미 문제를 해결했어요.
용법 ③ 계속 (~부터 지금까지 계속 ~하고 있다)
과거에 시작해서 현재까지 계속되는 상태나 행동을 나타냅니다.
plainI have lived in Seoul for five years.
나는 5년 동안 서울에 살고 있어요. (지금도 살고 있음)
She has worked at Google since 2020.
그녀는 2020년부터 Google에서 일하고 있어요.
We have been friends for twenty years.
우리는 20년째 친구예요.
How long have you studied English?
영어를 공부한 지 얼마나 됐어요?
I haven't seen him since last month.
지난달 이후로 그를 보지 못했어요.
계속 표현과 자주 쓰이는 전치사
plainfor + 기간 (for three years / for a long time)
since + 시점 (since 2020 / since last year / since I was a child)
plainI've known her for ten years.
나는 그녀를 10년째 알고 있어요.
She's lived here since she was born.
그녀는 태어나서부터 여기 살았어요.
How long have you been here?
여기 온 지 얼마나 됐어요?
용법 ④ 결과 (과거의 행동이 현재에 영향을 미침)
과거의 행동이 현재 상태에 영향을 주는 경우입니다.
plainI've lost my keys. (그래서 지금 열쇠가 없어요)
나는 열쇠를 잃어버렸어요.
She's broken her leg. (그래서 지금 다리가 부러진 상태예요)
그녀는 다리가 부러졌어요.
He's gone to New York. (그래서 지금 여기 없어요)
그는 뉴욕으로 갔어요.
They've sold the house. (그래서 지금 집이 없어요)
그들은 집을 팔았어요.
The computer has crashed. (그래서 지금 안 돼요)
컴퓨터가 다운됐어요.
5. 현재완료 부정문
plain[주어] + haven't / hasn't + [과거분사]
plainI haven't finished the project yet.
아직 프로젝트를 끝내지 못했어요.
She hasn't replied to my email.
그녀가 내 이메일에 답장을 안 했어요.
We haven't met before, have we?
우리 전에 만난 적 없죠?
They haven't decided yet.
그들은 아직 결정하지 않았어요.
He hasn't slept well recently.
그는 최근에 잠을 잘 못 자고 있어요.
6. 현재완료 의문문
plain[Have / Has] + [주어] + [과거분사]?
plainHave you ever tried sushi?
초밥을 먹어본 적 있어요?
Has she finished her presentation?
그녀가 발표 준비를 끝냈나요?
Have they arrived yet?
그들이 벌써 도착했나요?
Has he called you back?
그가 다시 전화했나요?
Have you been to Europe?
유럽에 가본 적 있어요?
짧은 대답
plainHave you been to Japan?
일본에 가본 적 있어요?
Yes, I have. / No, I haven't.
네, 있어요. / 아니요, 없어요.
Has she called?
그녀가 전화했나요?
Yes, she has. / No, she hasn't.
네, 했어요. / 아니요, 안 했어요.
의문사 + 현재완료
plainHow long have you worked here?
여기서 일한 지 얼마나 됐어요?
Where have you been?
어디 있었어요?
What have you done?
뭘 했어요?
How many times have you visited Korea?
한국을 몇 번 방문했어요?
Why hasn't she replied?
왜 그녀가 답장을 안 했을까요?
7. 현재완료 vs 과거시제 — 핵심 차이
이것이 현재완료 학습에서 가장 중요한 부분입니다.
핵심 원칙
plain현재완료 → 특정 시점을 언급하지 않음 (현재와 연결)
과거시제 → 특정 과거 시점을 언급함 (완결된 사건)
과거 시간 표현의 차이
현재완료와 함께 쓸 수 없는 시간 표현 (특정 과거 시점)
plainyesterday / last week / last year
in 2020 / in March
ago (two days ago, three years ago)
when (when I was young)
현재완료와 함께 쓰는 시간 표현 (현재와 연결)
plainever / never / before
just / already / yet / recently / lately
for + 기간
since + 시점
so far / up to now / until now
비교 예문
plain【과거시제 — 특정 과거 시점】
I went to Japan last year.
나는 작년에 일본에 갔어요. (특정 시점 → 과거시제)
【현재완료 — 경험】
I have been to Japan.
나는 일본에 가본 적이 있어요. (언제인지 불명확 → 현재완료)
---
【과거시제 — 완결된 과거】
She finished the report an hour ago.
그녀는 한 시간 전에 보고서를 끝냈어요.
【현재완료 — 완료, 현재에 영향】
She has just finished the report.
그녀는 방금 보고서를 끝냈어요. (지금 끝난 상태)
---
【과거시제 — 더 이상 아닌 상태】
He worked at Google for three years.
(and then he left → 현재는 안 함)
그는 3년 동안 Google에서 일했어요.
【현재완료 — 지금도 계속】
He has worked at Google for three years.
(and still works there → 지금도 일하고 있음)
그는 3년째 Google에서 일하고 있어요.
8. been vs gone
have been과 have gone은 둘 다 go의 현재완료지만 의미가 다릅니다.
plainhave been to → 갔다가 왔다 (경험)
have gone to → 갔다 (그래서 지금 여기 없다)
plainI have been to Paris.
나는 파리에 가본 적이 있어요. (지금은 여기 있음)
She has gone to Paris.
그녀는 파리에 갔어요. (그래서 지금 여기 없음)
Where's Tom? — He's gone to the supermarket.
Tom 어디 있어요? — 슈퍼마켓에 갔어요. (지금 없음)
Have you been to the new café? — Yes, I have.
새 카페에 가봤어요? — 네, 가봤어요. (경험)
9. 현재완료진행형 — have been + -ing
과거에 시작해서 현재까지 계속 진행 중인 동작을 강조할 때 사용합니다.
plain[주어] + have/has been + 동사-ing
plainI have been working here for five years.
나는 여기서 5년째 일하고 있어요. (지금도 일하는 중)
She has been studying all night.
그녀는 밤새 공부하고 있어요.
It has been raining since this morning.
오늘 아침부터 비가 내리고 있어요.
They have been waiting for an hour.
그들은 한 시간째 기다리고 있어요.
How long have you been learning English?
영어를 배운 지 얼마나 됐어요?
현재완료 vs 현재완료진행형
| 현재완료 | 현재완료진행형 |
|---|---|
| 상태·결과 강조 | 진행·과정 강조 |
| I’ve read that book. (읽었다 — 완료) | I’ve been reading all day. (읽고 있다 — 과정) |
| She’s lived here for years. (살고 있다 — 상태) | She’s been living here temporarily. (임시로 살고 있다 — 진행) |
plainI've written three emails today. (완료 — 3개 씀)
I've been writing emails all morning. (진행 — 계속 쓰고 있음)
10. 현재완료 관련 핵심 표현 패턴
It’s the first time ~ have + p.p.
plainIt's the first time I've tried kimchi.
김치를 먹어보는 것이 처음이에요.
It's the first time she's visited Korea.
그녀가 한국을 방문하는 것이 처음이에요.
Is this the first time you've flown?
비행기를 타는 것이 처음인가요?
This is the + 최상급 ~ I’ve ever + p.p.
plainThis is the best meal I've ever had.
이것은 내가 먹어본 것 중 가장 맛있는 음식이에요.
That's the most beautiful place I've ever seen.
그것은 내가 본 것 중 가장 아름다운 곳이에요.
He's the most interesting person I've ever met.
그는 내가 만나본 사람 중 가장 흥미로운 사람이에요.
Have you + p.p. + yet? / Have you + p.p. + already?
plainHave you finished your homework yet?
숙제 벌써 다 했어요?
Have you already eaten?
벌써 먹었어요?
I've already done it.
이미 했어요.
I haven't done it yet.
아직 안 했어요.
11. 실전 회화 — 현재완료 총동원
상황 ① 여행 경험 나누기
plainA: Have you ever been to Southeast Asia?
동남아시아에 가본 적 있어요?
B: Yes, I have! I've been to Thailand,
Vietnam, and Indonesia.
네, 있어요! 태국, 베트남, 인도네시아에
가봤어요.
A: That's amazing! Which one have you
enjoyed the most?
대단하네요! 어디가 가장 좋았어요?
B: I've loved them all, but Thailand is
by far the most memorable.
I've been there three times already.
다 좋았지만, 태국이 단연 가장 기억에 남아요.
이미 세 번이나 갔어요.
A: Have you tried the street food there?
거기 길거리 음식 먹어봤어요?
B: Of course! I've eaten everything from
pad thai to mango sticky rice.
It's the best food I've ever had.
물론이죠! 팟타이부터 망고 찰밥까지
다 먹어봤어요.
내가 먹어본 것 중 최고예요.
A: I've never been to Southeast Asia.
It's been on my bucket list for ages.
나는 동남아시아에 가본 적이 없어요.
오래전부터 버킷리스트에 있었는데.
상황 ② 직장에서 업무 확인
plainA: Have you sent the report to the client yet?
클라이언트에게 보고서 벌써 보냈어요?
B: Not yet. I've been working on it all morning
but I haven't finished the last section.
아직요. 오전 내내 작업하고 있었는데
마지막 섹션을 아직 못 끝냈어요.
A: Has the client called about it?
클라이언트가 그것에 대해 전화했나요?
B: Yes, they've called twice already.
They need it by 3 PM.
네, 이미 두 번 전화했어요.
오후 3시까지 필요하다고 해요.
A: Have you told them it's nearly done?
거의 다 됐다고 말했나요?
B: I've left them a voicemail, but they
haven't called back yet.
I've also sent an email, but they
haven't replied.
음성메시지를 남겼는데, 아직 다시 전화하지
않았어요. 이메일도 보냈는데 답장이 없어요.
A: Okay, just finish it as quickly as you can.
They've been waiting long enough.
알겠어요, 가능한 한 빨리 끝내세요.
충분히 기다렸잖아요.
상황 ③ 오래된 친구와 재회
plainA: Oh my goodness! I haven't seen you
in ages! How have you been?
세상에! 정말 오랜만이에요!
어떻게 지냈어요?
B: I've been great, thanks! So much has
changed since we last met.
잘 지냈어요, 감사해요! 마지막으로 만난 이후
많은 게 변했어요.
A: How long has it been?
얼마나 됐죠?
B: It's been at least five years!
I've gotten married since then,
and we've just had our first child.
최소 5년이요!
그 이후로 결혼했고,
방금 첫째 아이가 태어났어요.
A: Congratulations! I had no idea.
축하해요! 전혀 몰랐어요.
B: What about you? What have you been
up to all this time?
당신은요? 이 오랜 시간 동안 어떻게 지냈어요?
A: Well, I've changed jobs twice,
and I've recently moved to a new apartment.
Oh, and I've started learning Spanish!
저는 직장을 두 번 바꿨고,
최근에 새 아파트로 이사했어요.
그리고 스페인어를 배우기 시작했어요!
12. 현재완료 핵심 부사 총정리
| 부사 | 의미 | 위치 | 문장 유형 |
|---|---|---|---|
| ever | 지금까지 | have와 p.p. 사이 | 의문문 |
| never | 한 번도 ~ 않다 | have와 p.p. 사이 | 부정 |
| just | 방금, 막 | have와 p.p. 사이 | 긍정 |
| already | 이미 | have와 p.p. 사이 / 문장 끝 | 긍정·의문 |
| yet | 아직 | 문장 끝 | 부정·의문 |
| recently | 최근에 | 문장 끝 / 문장 앞 | 긍정·부정 |
| lately | 요즘 | 문장 끝 | 긍정·부정 |
| so far | 지금까지 | 문장 끝 / 문장 앞 | 긍정·부정 |
| for | ~동안 | have와 p.p. 뒤 | 계속 |
| since | ~부터 | have와 p.p. 뒤 | 계속 |
13. 자주 틀리는 실수 정리
실수 ① 현재완료 + 특정 과거 시간 표현
plain❌ I have seen her yesterday.
✅ I saw her yesterday.
→ yesterday는 특정 과거 시점 → 과거시제
❌ She has visited Japan last year.
✅ She visited Japan last year.
→ last year는 특정 과거 시점 → 과거시제
실수 ② 과거시제 + ever/never
plain❌ Did you ever eat kimchi?
✅ Have you ever eaten kimchi?
→ ever(지금까지의 경험) → 현재완료
❌ I never went there.
✅ I've never been there.
→ never + 경험 → 현재완료
실수 ③ have been to vs have gone to 혼동
plain❌ I have gone to Paris three times.
(지금 파리에 없는 상태로 들림)
✅ I have been to Paris three times.
(경험 — 지금은 여기 있음)
실수 ④ have + 과거형 사용 (p.p. 대신)
plain❌ I have went to school.
✅ I have gone to school.
→ go의 과거분사는 gone (went는 과거형)
❌ She has wrote a letter.
✅ She has written a letter.
→ write의 과거분사는 written
실수 ⑤ has/have 주어 일치 오류
plain❌ He have seen it.
✅ He has seen it.
→ He/She/It → has
❌ They has finished.
✅ They have finished.
→ They → have
14. 문형 정리
| 문형 | 구조 | 예문 |
|---|---|---|
| 긍정문 | 주어 + have/has + p.p. | I’ve eaten sushi. |
| 부정문 | 주어 + haven’t/hasn’t + p.p. | She hasn’t called. |
| 의문문 | Have/Has + 주어 + p.p.? | Have you been there? |
| 경험 | have p.p. + ever/never/before | Have you ever tried it? |
| 완료 | have just/already + p.p. | I’ve just finished. |
| 계속 | have p.p. + for/since | I’ve lived here for 5 years. |
| 결과 | have p.p. (현재 상태 암시) | I’ve lost my keys. |
| 최상급 + 경험 | the + 최상급 + I’ve ever + p.p. | The best I’ve ever had. |
| 처음 경험 | It’s the first time + I’ve + p.p. | It’s the first time I’ve tried it. |
| 현재완료진행 | have/has been + -ing | I’ve been waiting for hours. |
마무리
현재완료의 핵심 원칙 세 가지를 기억하세요.
plain① 현재완료 = 과거의 일 + 현재와의 연결
② 특정 과거 시간 표현(yesterday/last year/ago) → 과거시제
③ ever/never/just/already/yet/for/since → 현재완료
그리고 헷갈리는 두 가지:
plainhave been to (경험 — 지금 여기 있음)
have gone to (결과 — 지금 거기 있음/없음)
다음 강에서는 수동태(Passive Voice) 를 완전히 정복합니다.
"누가 했는가"보다 "무엇이 됐는가"를 강조하는 수동태의 원리와 시제별 변형까지 교과서 수준으로 다룹니다!
📚 시리즈 목차
[초급 전반 — A1 레벨] ✅ 완료
- 1강 ~ 10강 완료
[초급 후반 — A2 레벨]
- 11강: 조동사 완전 정복 — can · must · should · may
- 12강: 전치사 완전 정복 — in · on · at · to · for · with
- 13강: 비교 표현 — 비교급 · 최상급
- 14강: 현재완료 — have + p.p. ← 현재 글
- 15강: 수동태 — be동사 + p.p.
- 16강: to부정사 · 동명사 — to do / doing
- 17강: 관계대명사 — who · which · that
- 18강: 가정법 — If + 현재 · 과거 · 과거완료
[실용 영어 — B1 레벨 진입]
- 19강: 비즈니스 · 일상 이메일 영어
- 20강: 발음 교정 · 원어민 표현 · 시리즈 총복습