动词时态迷宫:一招搞定since和for的正确用法
【来源:易教网 更新时间:2025-12-20】
嗨,亲爱的英语小达人!今天咱们聊聊一个让无数同学抓狂的语法点——动词时态里的“since”和“for”。是不是每次看到“for”就用现在完成时,结果被老师打叉?别慌,作为带过1000+学生的英语老教师,我太懂你的痛了!
上周,我班上的小雅写了“我在这里住了”,老师批注:“用for还是since?”,她直接哭了。但今天,我就用最接地气的方法,帮你彻底拿下这个难点。
为什么“since”和“for”这么难分?
先来个真实场景:小明在写作文时,写了“I have lived here for twenty years”,结果老师画了个大红叉。他委屈地问:“老师,中文说‘住了’,英语不也该用‘for’吗?”我笑着解释:关键在动作是否还在继续。
现在完成时(have/has + 过去分词)表示动作从过去开始,持续到现在,或者对现在有影响。而“for”表示时间段,“since”表示时间起点。
- for + 时间段:强调“多久了”,动作持续到现在。
例:I have lived here for twenty years.(我住这儿了,现在还住。)
- since + 时间点:强调“从什么时候开始”,动作从那个时间点持续到现在。
例:I have lived here since I was ten.(我十岁起就住这儿,现在还住。)
重要提醒:当动作已结束时,用过去时。
- 例:I worked here for twenty years.(我工作,但现在已经不干了。)
- 例:I have worked here for twenty years.(我工作,现在还在干。)
小窍门:公式转化法(亲测有效!)
这个方法是我教学生最管用的!当看到“现在完成时 + for + 时间段”,用这个公式转化,瞬间看出对错。动词必须能持续,否则直接翻车!
公式:
\[ \begin{align*}\text{主语 + have/has + 过去分词 + for + 时间段} & = \text{主语 + began to + 动词原形 + 时间段 ago, and is still + 动词原形 + now}\end{align*} \]
- 正确例子:
Tom has studied Russian for three years.
= Tom began to study Russian three years ago, and is still studying it now.(对!know是延续性动词,可以持续。)
- 错误例子:
Harry has got married for six years.
= Harry began to get married six years ago, and is still getting married now.(错!因为“get married”是瞬间动作,不能持续。)
所以,正确说法是:
Harry got married six years ago.
或
Harry has been married for six years.(注意:be married是状态,可以持续。)
为什么学生总在这里栽跟头?
因为动词分“能持续”和“不能持续”!
- 延续性动词:study, live, work, know(可以持续)→ 用现在完成时 + for
例:I have known her for ten years.(我认识她十年了。)
- 非延续性动词:marry, die, join, leave(瞬间动作)→ 不能用现在完成时 + for,要用过去时或“have been + 形容词”
常见错误大集合(来自我的课堂实录)
- 错:She has been dead for five years.
对:She died five years ago. 或 She has been dead for five years.(be dead是状态,可以持续。)
- 错:I have left school for a month.
对:I left school a month ago. 或 I have been away from school for a month.
- 错:He has joined the army for two years.
对:He joined the army two years ago. 或 He has been in the army for two years.
实战小测试:来挑战一下!
试试看,判断对错(答案在最后):
1. I have known my best friend for ten years.
2. He has joined the club for two years.
3. My parents have lived in Shanghai since .
4. She has been a teacher for five years.
5. I have got the book for a week.
如何避免错误?记住这三招
1. 先问自己:动作还在继续吗?
- 如果还在,用现在完成时 + for/since。
- 如果已结束,用过去时 + for。
*例:小华去年毕业了→I graduated last year. 但小华现在工作→I have worked here for two years.*
2. 动词性质要分清:
- 延续性动词(study, live, know)→ 用现在完成时 + for
- 非延续性动词(marry, die)→ 用过去时或“have been + 形容词”
*例:I have been a student for six years.(对!be a student是状态)*
3. 公式转化是救命稻草:
遇到不确定,就用公式转化,一试就灵!
*例:I have had this phone for three months.
= I began to have this phone three months ago, and am still having it now.(对!have是延续性动词。)*
真实案例:小华的逆袭
上个月,小华在月考里写“I have been ill for a week”,被扣分。我问他:“ill是状态吗?”他点头。我解释:ill是状态,可以持续,所以“has been ill for a week”是对的。
但如果是“I have got sick for a week”,就错了,因为“get sick”是瞬间。后来,小华用这个方法,语法题正确率飙升!他兴奋地发来消息:“老师,我终于搞懂了!”
语法是你的英语能力的阶梯。every small step counts. 今天的小窍门,明天的满分作文!别怕犯错,犯错是进步的开始。多练几次,你就能像呼吸一样自然地用对时态。
记住口诀:
- for = 多久了(动作持续)
- since = 从什么时候开始(动作持续)
- 用公式转化,错不了!
快去试试吧,下次写作文,把“since”和“for”用得溜溜的!你一定行,我看好你哦!
(答案:1.对 2.错 3.对 4.对 5.错——正确应为“I have had the book for a week”或“I got the book a week ago”)
- 董教员 长春理工大学 光电信息科学与工程
- 马教员 吉林大学 俄语
- 石教员 长春理工大学 电子信息
- 董教员 长春理工大学 外国语 英语
- 何教员 吉林大学 车辆工程
- 蒋教员 长春师范学院 英语
- 郭教员 长春大学 车辆工程
- 郭教员 长春大学 汉语言文学
- 金教员 Swiss Hotel Management School&University of Derby Hospitality

搜索教员