现在完成时: For 与 Since (持续时间与起始点)
Grammar Rule in 30 Seconds
Use 'for' to measure the length of time and 'since' to pinpoint the exact moment something started.
- Use 'for' + a period of time (e.g., for 3 hours, for a decade).
- Use 'since' + a specific point in time (e.g., since 9:00, since Monday).
- Always use the Present Perfect (have/has + V3) to connect that past time to now.
Overview
Present Perfect(现在完成时)用来连接过去发生的动作或状态与现在。当我们想精确地表达这种连接的持续时间或者它的起始点时,for 和 since 这两个介词就变得非常重要了。它们能帮助我们清晰地说明某事持续了多久,或者是什么时候开始的,从而提供关键的时间信息。你可以把它们看作是时间标记,引导听者或读者理解一个从过去开始、并且与现在仍然相关的事件的时间线。理解它们的用法区别,是准确用英语交流关于持续性经历、成就或状态的基础。for 和 since 与 Present Perfect 搭配使用的核心功能,是量化或定位一个从过去延续到现在的时间段。For用于量化一个持续时间,回答“多久?”(How long?)这个问题。它表示一个时间长度或时期,比如for three days(三天)、for several months(几个月)或for a long time(很长时间)。当你使用for时,你是在衡量一个活动或状态的总长度。
Since用于指明一个明确的过去起始点,回答“什么时候开始?”(When did it start?)这个问题。它表示一个动作或状态开始的确切时刻,并且从那时起一直持续到现在。例子包括since Monday(自周一以来)、since 2022(自2022年以来)或since I was a child(自我孩提时代以来)。这里的语言原理是:since建立了一个时间参考点,而Present Perfect描述的是从那个参考点直到现在的这段不间断的时间。
I have lived here for five years. (我住在这里五年了。)I have lived here since 2019. (我自2019年起就住在这里了。)for 和 since 搭配 Present Perfect 的句子结构是有规律可循的。掌握这些模式能确保你在表达时间跨度时清晰明了。- 主语 +
have/has+ 动词的过去分词 +for+ _时间段_ They have waited for two hours.(他们等了两个小时。)
two hours*。*You haven't seen her for ages.(你好久没见到她了。)
ages*(很久)。*- 主语 +
have/has+ 动词的过去分词 +since+ _时间点_ He has studied English since 2023.(他自2023年起就一直在学英语。)
2023*年。*We haven't eaten since breakfast.(我们自从早餐后就没吃东西了。)
breakfast*。*since 后面的时间点也可以是一个从句,这个从句的功能就像一个具体事件,作为起始标记:She hasn't contacted me since she moved away. (自从她搬走后,她就没联系过我。)she moved away(她搬走了)这个事件定义了“她没联系我”这个状态的起始点。Present Perfect(以及 Present Perfect Continuous)时态中使用 for 和 since,来讨论那些从过去开始并一直延续到现在的动作或状态。其根本原则是持续性或与现在的关联性。- 1描述持续到现在的状况或状态: 当一个活动或情况在过去开始,并且至今尚未结束,持续到现在的时刻时,使用这两个介词至关重要。你是在描述一个不间断的时间链条。
I have known my best friend for fifteen years.(我认识我最好的朋友十五年了。)
The company has been profitable since its inception.(这家公司自成立以来一直盈利。)
- 1总结至今为止的经历,并指明其持续时间或起源: 如果你在回顾一段包含现在在内的经历或成就,
for和since可以添加关键的细节。
She hasn't traveled abroad for three years.(她已经三年没出国旅行了。)
We have owned this car since 2020.(我们自2020年起就拥有这辆车了。)
- 1强调过去某个动作在现在的影响或状态: 即使一个动作已经结束,但如果它的效果仍在被积极感受或观察,
for或since可以用来解释当前状态的持续时间或起源。
I haven't eaten anything since lunch, and I'm starving.(我自从午餐后就什么都没吃,我现在饿坏了。)
They have been waiting for this opportunity for months.(他们为了这个机会已经等了好几个月了。)
for 或 since 表达的时间段必须直接连接过去和现在,表明这个活动或状态尚未结束。for 和 since 搭配 Present Perfect。误用常常会导致语法错误,并混淆事件的时间关系。- 1用于明确的过去已完成的动作: 如果一个动作在过去开始,并在过去就完全结束了,与现在没有任何联系或相关性,你必须使用
Simple Past(一般过去时)。在这种情况下,不要使用带for或since的Present Perfect。
- 错误用法:
I have lived in London for five years (but I left last month).(我住在伦敦五年了(但我是上个月搬走的)。) - 正确用法:
I lived in London for five years.(我住在伦敦五年。)
Simple Past 搭配 for 描述的是过去一个已完成的持续时间,而 Present Perfect 搭配 for 描述的是包含现在在内的、仍在进行的持续时间。- 1与明确的过去时间表达连用(除非
since用来标记那个特定点): 避免在Present Perfect中使用for或since,如果时间表达清晰地指向一个已完成的过去时间段,例如yesterday(昨天)、last week(上周)、two years ago(两年前),或者一个过去的特定年份(如果动作不再持续)。
- 错误用法:
She has visited Paris last year.(她去年访问了巴黎。)
last year 明确指向一个已完成的过去动作。*- 正确用法:
She visited Paris last year.(她去年访问了巴黎。)
- 但是,
She hasn't visited Paris since last year.(自从去年以来,她就没访问过巴黎。)是正确的,因为since last year(自从去年)标记的是“未访问巴黎”这个状态的起始点,并且这个状态持续到现在。
- 1当焦点仅仅是已完成的事件或结果,不强调持续时间或起源时: 如果你只是陈述某事已经发生,而时间长短或起始点并非你的重点,通常可以省略
for和since。
- 正确用法:
I have read that book.(我看过那本书。)
- 更强调持续时间:
I have read that book for two weeks.(我读了这本书两个星期了。)
for 和 since 通常不适用于 Present Perfect。Present Perfect 搭配 for 和 since 时,经常会遇到一些特定的挑战。这些错误通常源于概念上的误解或母语(中文)的干扰。- 1混淆
for和since: 这是最常见的错误。学习者常常将两者混用,未能区分“一段时间”和“一个时间点”。
- 错误用法:
I have been waiting since two hours.(我等了两个小时了。)
- 正确用法:
I have been waiting for two hours. - 错误用法:
She has lived here for last July.(她自从去年七月就住在这里了。)
- 正确用法:
She has lived here since last July.
- 1将
Present Simple用于描述从过去持续至今的状态: 很多语言(包括中文)习惯用现在时来描述从过去开始并一直持续到现在的动作或状态。但在英语中,这种情况下需要使用Present Perfect(或Present Perfect Continuous)。
- 错误用法:
I know him for ten years.(我认识他十年了。)
- 正确用法:
I have known him for ten years.(我认识他十年了。)
- 1在已明确结束的动作上错误地使用带
for/since的Present Perfect: 这个错误模糊了Present Perfect(连接过去与现在)和Simple Past(已完成的过去动作)之间的界限。
- 错误用法:
He has worked at that company for five years, but he retired last month.(他在那家公司工作了五年,但他上个月退休了。) - 正确用法:
He worked at that company for five years.(他在那家公司工作了五年。)
Present Perfect 暗示动作仍然在继续或与现在有联系。如果动作已经明确结束,就应该用 Simple Past。- 1在需要明确持续时间或起始点时省略
for或since: 虽然在非正式场合有时可以接受,但在需要精确表达的语境中省略这些介词,会导致意思含糊不清。
- 含糊不清:
I have lived in London five years.(我住在伦敦五年。)
for 明确表达。*- 更清晰:
I have lived in London for five years.(我住在伦敦五年了。)
for 和 since 的精确含义。for 和 since 的用法与一些其他时间表达方式有所不同,尤其是在与过去的时间点或已完成的动作结合时。理解这些对比有助于避免混淆。Present Perfect + for + _时间段_ | 从过去某个时间点开始,持续至今的动作或状态。 | I have studied English for three years.(我学英语三年了。) |Present Perfect + since + _时间点_ | 从过去某个特定时间点开始,持续至今的动作或状态。 | I have studied English since 2021.(我自2021年起就学英语了。) |Simple Past + for + _时间段_ | 在过去发生并持续了一段时间,但已结束的动作或状态。 | I studied English for three years (but I don't study it now).(我学了三年英语(但现在不学了)。) |Simple Past + _过去特定时间点_ | 在过去发生的已完成的动作或状态,不强调持续性。 | I studied English in 2021.(我在2021年学了英语。) |Present Perfect (无 for/since) | 强调已发生的动作或经验,与现在有联系,但不侧重时间长度或起点。 | I have studied English.(我学过英语。) |- 中文: “我(在)这儿住了五年。” (可以指过去住,也可以指现在还住)
- 英文:
I lived here for five years.(强调过去住了五年,现在不一定住)I have lived here for five years.(强调从五年前开始住,现在仍然住在这里)
- 中文: “我昨天看了这本书。”
- 英文:
I read that book yesterday.(一般过去时,动作已完成) - 英文:
I have read that book.(现在完成时,读过这个经历与现在相关,但不说什么时候)
for,什么时候用 since?for 后面跟时间段(比如 two hours, ten days, a long time),since 后面跟时间点(比如 Monday, 2023, I was young)。for 告诉你“多久”,since 告诉你“从什么时候开始”。for 还是 since?a long time)是一个时间段,所以要用 for。正确的说法是:I have been waiting for a long time.。如果你想强调从某个点开始等到现在,比如“自从我到这里之后”,那就是 since:I have been waiting since I arrived here.。for 或 since 搭配 Simple Past 吗?for 或 since 搭配 Simple Past 时,表示的是过去的某个持续时间或起始点,并且这个动作或状态在过去就已经结束了。例如:He lived in that city for ten years.(他过去住在那个城市十年,但现在不住了。)而 He has lived in that city for ten years. 则表示他从十年前开始住,并且现在仍然住在那儿。for 吗?Present Perfect 搭配 for(强调时间长度)或者 since(强调起始点)是最自然、最准确的。虽然有时省略 for 也能被理解,但加上会更清晰,尤其是在需要强调持续性的场合。例如:I have studied English for many years. 比 I have studied English. 更能体现“多年持续学习”的含义。Present Perfect + For/Since Structure
| Subject | Auxiliary | Past Participle | Time Marker |
|---|---|---|---|
|
I / You / We / They
|
have
|
lived here
|
for 5 years
|
|
He / She / It
|
has
|
worked here
|
since January
|
|
I / You / We / They
|
haven't
|
seen him
|
for a week
|
|
He / She / It
|
hasn't
|
called
|
since Tuesday
|
|
Have
|
you
|
been here
|
for long?
|
|
Has
|
she
|
known him
|
since school?
|
Common Contractions
| Full Form | Contraction | Example |
|---|---|---|
|
I have
|
I've
|
I've been here for an hour.
|
|
You have
|
You've
|
You've known her since 2010.
|
|
He has
|
He's
|
He's worked here for a month.
|
|
She has
|
She's
|
She's been sick since Friday.
|
|
It has
|
It's
|
It's been raining for days.
|
|
We have
|
We've
|
We've lived here since June.
|
|
They have
|
They've
|
They've waited for ages.
|
Meanings
In English, the Present Perfect is used to describe actions that began in the past and continue into the present. 'For' and 'since' are the specific tools we use to tell the listener exactly how long that action has been happening.
Duration (For)
Measuring the total length of time from the start until now.
“She has been a doctor for 20 years.”
“We have waited for ages.”
Starting Point (Since)
Identifying the specific date, time, or event when the action began.
“I have known him since kindergarten.”
“It hasn't rained since last Tuesday.”
Negative Duration
Expressing how long it has been since an event last occurred.
“I haven't eaten for six hours.”
“She hasn't called since her birthday.”
Reference Table
| Form | Structure | Example |
|---|---|---|
|
Affirmative
|
S + have/has + V3 + for/since
|
I have worked for two hours.
|
|
Negative
|
S + haven't/hasn't + V3 + for/since
|
She hasn't called since Sunday.
|
|
Question
|
Have/Has + S + V3 + for/since?
|
Have you lived here for long?
|
|
Short Answer (+)
|
Yes, S + have/has
|
Yes, I have.
|
|
Short Answer (-)
|
No, S + haven't/hasn't
|
No, she hasn't.
|
|
Wh- Question
|
Wh- + have/has + S + V3 + for/since?
|
How long have you been here?
|
|
Clause with Since
|
S + have/has + V3 + since + Past Simple
|
I've been sad since you left.
|
正式程度
I have been a resident of this city for over a decade. (residency)
I've lived here for ten years. (residency)
I've been here for ages. (residency)
I've been repping this city since forever. (residency)
For vs. Since Visualized
FOR (Duration)
- A period of time 2 hours, 5 years, a long time
- Measurement The length of the action
SINCE (Starting Point)
- A specific moment 9:00 AM, Monday, 2021
- The 'Start' flag When the action began
Timeline Comparison
Which one do I use?
Are you talking about a total length of time?
Are you talking about a specific date or time it started?
Time Expression Categories
Use FOR
- • ten minutes
- • two weeks
- • a decade
- • a long time
Use SINCE
- • 8 o'clock
- • February
- • I was a child
- • last Christmas
按水平分级的例句
I have been here for two hours.
She has been happy since Monday.
We have had this car for a week.
He has been a student since 2023.
They have lived in this house for ten years.
I haven't seen him since last night.
Has it rained since Friday?
She has worked at the bank for six months.
I've known my best friend since we were in primary school.
He hasn't eaten meat for a very long time.
We've been waiting for the bus for over forty minutes.
How long has she been interested in photography?
The company has been expanding its reach since the new CEO took over.
I've been meaning to call you for ages, but I've been so busy.
Prices have been rising steadily since the beginning of the year.
He's been playing the piano for most of his life.
Since the inception of the project, we have encountered numerous hurdles.
The policy has been in place for what seems like an eternity.
I haven't felt this energized since I was in my early twenties.
They have been living under a cloud of suspicion for several months now.
The landscape has undergone a radical transformation since the industrial era began.
For all the time I've spent researching, I've yet to find a definitive answer.
Since having been granted autonomy, the department has flourished.
The tradition has been upheld for generations, since time immemorial.
容易混淆
Learners use Past Simple for ongoing actions or Present Perfect for finished ones.
Both relate to time, but 'during' is used with a noun to say *when* something happened, not *how long*.
Learners use 'from' to indicate a starting point with Present Perfect.
常见错误
I am here for two days.
I have been here for two days.
I have been here since two hours.
I have been here for two hours.
She has work here since 2010.
She has worked here since 2010.
I have lived here since a long time.
I have lived here for a long time.
I've been here since I was borned.
I've been here since I was born.
He has since Monday been sick.
He has been sick since Monday.
We have known us for years.
We have known each other for years.
I've been knowing him for years.
I've known him for years.
It's been a long time since I don't see him.
It's been a long time since I saw him.
I have lived here since five years ago.
I have lived here for five years.
Since two years, I have been working here.
For two years, I have been working here.
I have for many years sought the truth.
I have sought the truth for many years.
句型
I have been ___ for ___.
She has known ___ since ___.
It has been ___ since ___.
How long have you ___?
Real World Usage
I have worked in sales for over six years.
I've had this pain since yesterday morning.
I've lived in this neighborhood since I was a kid.
I've been waiting for a refund for two weeks.
Software engineer since 2015.
Married to my best friend since '18.
The 'How Long' Test
Avoid 'Since' with 'Ago'
Stative Verbs
Ages and Forever
Smart Tips
Try to see if you can put the word 'all' before the time. If you can say 'all my life', you can usually use 'for' (for my whole life). If you can't, it's likely 'since'.
Always put the verb after 'since' in the Past Simple.
Start your answer with 'For...' or 'Since...' to immediately give the listener the time context they need.
Use 'Since [Year]' to show your start date at a company. It looks professional and clear.
发音
Contraction Stress
In 'I've been', the 've' is almost silent. The stress is on 'been'.
Since vs. Sins
The 'ce' in 'since' is a sharp 's' sound. Do not pronounce it like 'z'.
For reduction
In fast speech, 'for' often sounds like 'fer'.
Emphasis on Duration
I've been waiting for FIVE hours!
Conveys frustration or surprise at the length of time.
记住它
记忆技巧
FOR is for the 'Four' (length) of the journey; SINCE is for the 'Start' of the story.
视觉联想
Imagine 'FOR' as a ruler measuring a piece of string (the duration). Imagine 'SINCE' as a push-pin on a calendar (the starting point).
Rhyme
For is the length, Since is the start; keep them together, don't pull them apart!
Story
I have been a traveler for ten years. I have been in this city since Tuesday. I have had this map for a long time, ever since I left home.
Word Web
挑战
Look at your watch. Write one sentence with 'for' and one with 'since' about how long you have been studying today.
文化笔记
BrE speakers are very strict about using Present Perfect with 'just', 'already', and 'yet' alongside 'for/since'.
AmE speakers sometimes use the Past Simple with 'for' even if the action is ongoing, though Present Perfect is still preferred in writing.
Using 'since [Year]' is a standard way for companies to show heritage and reliability on logos.
The Present Perfect developed in Germanic languages to express a state resulting from a past action. 'For' comes from Old English meaning 'because of' or 'intended for', while 'since' comes from 'siththan' (after that).
对话开场白
How long have you lived in your current house?
What is a hobby you've had since you were a child?
How long have you been studying English, and what has been the hardest part?
Since the pandemic started, how has your daily routine changed?
日记主题
常见错误
Test Yourself
I have been a teacher ___ 2010.
They have lived in Paris ___ three months.
Find and fix the mistake:
I am knowing him for five years.
I moved here in January. (I have lived...)
Match each item on the left with its pair on the right:
A: How long have you had that cold? B: ___
Select the grammatically perfect sentence.
We use 'since' with a period of time like 'six weeks'.
Score: /8
练习题
8 exercisesI have been a teacher ___ 2010.
They have lived in Paris ___ three months.
Find and fix the mistake:
I am knowing him for five years.
I moved here in January. (I have lived...)
1. ___ a long time / 2. ___ I was young / 3. ___ ten o'clock
A: How long have you had that cold? B: ___
Select the grammatically perfect sentence.
We use 'since' with a period of time like 'six weeks'.
Score: /8
Practice Bank
12 exercisesMy phone hasn't stopped ringing ___ I posted that viral video.
I haven't eaten a decent meal for last week.
Choose the correct sentence:
Translate into English: 'Llevo estudiando español desde hace un año.'
Arrange these words into a sentence:
Match the phrases with `for` or `since`:
How long have you been waiting ___ the bus?
The store is closed since three days.
Choose the correct sentence:
Translate into English: 'No he hablado con ella desde que se mudó.'
Arrange these words into a sentence:
Match the expressions with `for` or `since`:
Score: /12
常见问题 (8)
Yes, but it means the action is finished. `I lived there for two years` means you don't live there now. `I have lived there for two years` means you still live there.
It is always `for two years`. You use `since` only for a specific date or time, like `since 2022`.
Yes! You can say `since I was a child` or `since I started my job`. The verb in the 'since' clause is usually in the Past Simple.
Use `for` to say how long (for 2 hours). Use `during` to say when something happened (during the movie).
No, that is incorrect. You should say `for a long time` because it is a duration.
Because `be` is a stative verb. We use it to describe states (like being a student or being in a city) that started in the past and continue now.
Generally, no. In English, we use the Present Perfect to show that an action started in the past and continues now.
It is very common in informal, spoken English, but in formal writing, you should use a specific time or `for a very long time`.
Scaffolded Practice
1
2
3
4
Mastery Progress
Needs Practice
Improving
Strong
Mastered
In Other Languages
desde / hace
English requires the Present Perfect, not the Present Simple.
depuis
English distinguishes between 'for' and 'since' and requires a different verb tense.
seit
English uses two different words (for/since) and the Present Perfect.
kara / aida
Japanese doesn't have a direct 'Present Perfect' equivalent in the same way English does.
mundhu (منذ)
English requires a specific choice between two prepositions.
le (了) / yijing (已经)
Chinese has no verb conjugation for tense, making the 'have + V3' structure very difficult for learners.
Learning Path
Prerequisites
Learn These First
相关视频
Ancient Life as Old as the Universe
Supreme Court BANS Faithless Electors…………?
Is This The Biggest Mistake Science Ever Made?
Learn English Tenses: The Present Perfect
Learn English with Bob the Canadian
Master All 4 Present Tenses in 10 Min | English Grammar Lesson | Best Way To Learn English Tenses
Learn English | Let's Talk - Free English Lessons
Related Grammar Rules
现在完成时:美式 vs 英式 (I've done vs I did)
Overview 你有没有觉得你的英语{教科书|jiàokēshū}在骗你?你在课上学了一个规则,然后听到一个加州{博主|bózhǔ}完全不理那...
Phrasal Verbs: An Introduction (Turn On, Give Up, Look After)
## Phrasal Verbs: An Introduction A **phrasal verb** = verb + particle (up, on, off, out, in, away...) The combination...
人生经历:现在完成时与 Ever 和 Never
你有没有过明明翘了健身课,结果两小时后刷着健身 TikTok 却倍感负罪?或者你可能永远无法理解为什么有人喜欢吃菠萝披萨,哪怕你...
将来进行时 (will be -ing)
### Overview 在英语学习的旅程中,当你达到 B2 这个阶段,你已经不再满足于仅仅表达“我要做什么”,而是开始追求表达的**精确度...
英语现在完成时:连接过去与现在(基本构成)
Overview 你{有没有|yǒuméiyǒu}过走进一个{房间|fángjiān},却{完全|wánquán}忘了自己进去是要干嘛?这种事我们都{经历|jīnglì}...