He is in China now.He ____ (work)in Africa for 5 years.请问到底填worked还是had worked?rhebok 和 Splendidyuki 说的很有理

问题描述:

He is in China now.He ____ (work)in Africa for 5 years.请问到底填worked还是had worked?
rhebok 和 Splendidyuki 说的很有理

应该填has been worked

worked.现在中国而在非洲工作五年是过去,重点是过去在非洲而现在不在.类似的I lived in London for many years, but I never regretted coming back China.

has worked 现在完成时

has worked (现在完成时)/ has been working (现在完成进行时)
表示过去发生的事情,一直持续到现在,这两个时态都能表达此含义。

worked
过去完成时需过去动作为时间参照点,而句中没有其他动词,前一句为一般现在时,不能做参照.
如果用现在完成时,则那5年限定为5年前至今,而句意应为过去的一个5年,也许是10年前或者是任何一个时候