since for的现在完成时用法详解:
since自从…起, for+时间段(长达多久),常用在现在完成时。
1.since的用法
since + 过去的时间点: 自从…起
1)since + 具体年/月/日期/钟点
since 2010 自从2010年起
since July 自从7月起
since November 28th 自从11月28日起
since 10 o’clock 自从10点起
since yesterday / last month / last year
自从昨天/上个月/去年起
2)since + 时间段 + ago
since two years ago 自从两年前起
since two hours ago 自从两小时之前
3)since + 句子(一般过去时)
We have been friends since her baby was born.
自从她的宝宝出生起,我们就一直是朋友。
I haven’t seen her since she moved away.
自从她搬走以后,我就一直没见过她。
2. for + 时间段:长达多久
for six years 长达6年
for five months 长达5个月
We have known each other for ten years.
我们认识彼此已经有10年了。
3. 现在完成时与since/for 连用的句型
1)It is + 时间段 + since + 句子(一般过去时)
It is two years since he left.
自从他离开已经有两年了。
It is ten years since he died.
他已经死了10年了。
2)主语 + have/has + 动词的过去分词 + since +时间点
(此处的动词过去分词必须是:延续性动词或been+adj.等)
We have learned English since six years ago.
自从六年前起,我们就在学英语了。
[learned是延续性动词]
They have worked here since 2010.
我们自从2010年起在这里工作。
I have been away since he came.
自从他来,我就离开了。
[been away是状态,是延续性]
3)主语 + have/has +动词的过去分词+ for + 时间段
(此处的动词过去分词必须是:延续性动词或been+adj.等)
We have lived in Guangzhou for 12 years.
我们已经在广州生活了12年了。
4.since+时间点,for+时间段,不能与非延续性动词连用
只能与【延续性动词】或【been+adj.】等连用
She has come here for years.(×)
She has been here for years. (√)
她已经来这里好几年了。
[come是非延续性动词,不能与for years 连用]
具体请见:
延续性动词和非延续性动词转换