她在这所学校教书已经10年了。
3.在时间、条件状语从句中可用现在完成时表将来要完成的动作。
Don't get off the bus until it has stopped.
直到公交车停下才能下车。
He will come as soon as he has finished his work.
他一做完工作就会来。
(1)现在完成时与一般过去时的区别:①现在完成时强调的是过去的动作对现在造成的影响或结果,落脚点是现在。②一般过去时表示过去发生的动作或存在的状态,与现在的情况没有关系。与表示过去的时间状语连用,如 yesterday,last year,in the past,ago等。
He has lived in Beijing for four years.
他在北京住了四年了。(可能继续住下去)
He lived in Beijing for four years.
他在北京住过四年。(现在已经不在那里住了)
(2)在肯定句中,非延续性动词如come,go,leave,borrow,buy,die,join等的完成时不能与时间段连用,若要接时间段状语,则应换成相应的延续性动词或状态动词。但在否定句中,非延续性动词的完成时可与时间段连用。
I have bought a new car for two weeks.(×)
I have had a new car for two weeks.(√)
我买了这辆新车已经两周了。
三、现在完成时的两个常用句型
1.It is/has been+一段时间+since+一般过去时"自从......以来多久了"
It is/has been two weeks since we arrived here.
自从我们到这里已经有两星期了。
It is/has been three years since he smoked.
他戒烟已有三年了。
2.This/It is the first/second ...time(that)+现在完成时"这是某人第一/二......次做某事"
It is the third time that I have seen the film.
这是我第三次看这部电影了。
3.在"This/It is the+adjest+名词+that从句"结构中,that引导的宾语从句要用现在完成时态。
This is the best book that I have read.
这是我看过的最好的书。