请教英语语句表达的问题How long have youbeen learning English?--I have been learning English for two years.你英语学多久了?--我们学了两年了.上面的回复能否改成I have learnt English for two years.为什么?如果想表达这个意思,还有其他的表达方式吗?

问题描述:

请教英语语句表达的问题
How long have youbeen learning English?--I have been learning English for two years.你英语学多久了?--我们学了两年了.
上面的回复能否改成I have learnt English for two years.为什么?如果想表达这个意思,还有其他的表达方式吗?

可以,for+时间段 用完成时。现在完成进行时,动词的一种基本时态,其构成为:主语+助动词(have/has)+been+动词的现在分词+其他成分。表示动作从某一时间开始,一直持续到现在,或者刚刚终止,或者可能仍然要继续下去。(与since,for连用时,常常表示动作会进行下去)
视情况定吧!

I have been learning English for two years.
I have learnt English for two years.
从语法上看,这两个句子都正确.
但要回答问句How long have you been learning English?,只能选第一个.
如果改成I have learnt English for two years.,就有答非所问的嫌疑.