初中生,问大家一个简单的英语问题.

来源:百度知道 编辑:UC知道 时间:2024/05/29 12:43:44
I have lived here for twenty years. 我在这里已经住了20年了

这个是为什么要用现在完成时呢? 现在完成时表示的概念是过去一个不确定的时间里发出的一个动作或状态延续到现在,对现在产生的影响或是结果? 但是句子中已经明确的说了一个确定的时间啊~

如果变成一般过去时对不对? I lived here for twenty years. 好像这样也挺顺口的.

请教!

for引导的时间状语是段时间,所以前面的时态也要用可以表示段时间的时态。一般过去时只能表示简单的过去动作,现在完成时才能表示段时间,而且这句话的意思很明显是现在还在这里住着,所以只恩能够用现在完成时。这是现在完成时的最基本用法。

I have lived here for twenty years. 我在这里已经住了20年了.并且现在仍然住在这里。
这句话强调的是已经完成

I lived here for twenty years. 是说曾经在这里住了20年,现在住不住在这里就不知道了。

表示持续一段时间的动作要用完成时

持续到现在,所以用现在完成时

for+一段时间 一般表示持续时间

现在完成时表示的概念是过去一个时间里发出的一个动作或状态延续到现在
显然 i 现在还住在这里,即“状态延续到现在”
该成过去式表示曾经住在这里,现在已经不住了,意思是不一样的。
即使是要表示这个意思,也要用完成时 i had lived here for 20 years.
一般过去时只表示过去时点的某个动作

i have lived here for 20 years.
i lived here 20 years ago.
要注意英语里时态要与时间状语一致。

一般过去时只能表示过去的动作,现在完成时才能表示一段时间。for引导的时间状语是时间段,才能表示延续20年这段时间的含义。