I have lived in there for 10 years ,为什麼用have ?而不是用had?

来源:百度知道 编辑:UC知道 时间:2024/05/18 01:12:38

因为你是说从十年前到现在这段时间,所以用现在完成时。现在完成时的结构是 have/has+动词过去分词。所以这道题用have lived.
如果:他说他住在那里十年了。He said he had lived there for ten years.本句因为主句的谓语是过去时,所以表示的是到他说的时候,说是过去时,所以到过去时为止,用过去完成时,had+动词的过去分词。

现在完成时表示持续到现在的时间,按照这个句子分析,说话人现在刚回来,说了这句话,所以用了现在完成时,

因为have表明现在还住在这,
用had表示过去住在这。
时态不一样。

老鼠讲的很全面了,我就不补充了

have lived 是现在完成时
had lived 是过去完成时