for+一段时间,可表示动作的延续性。如,I have been livig here for 3 years. (这是现在完成进行时,表示,我已经在这里住了3年了,以前开始住的,现在在住,以后也可能继续住下去。)
第二种情况,强调结果。如,I have lived here for 3 years.(我住在这了三年了,强调住过,现在不在住了)
第三种情况,谓语动词一般过去时,强调过去的动作持续的时间.如,I read for 1hour yesterday.(昨天我读了1一个小时的书,强调是昨天,并且,读书这一个动作时刻持续性的,所以这里用过去式表达)
现在完成时 强调 过去动作对现在造成的影响
如:I have learned English for many years and have a good knowledge of it.(正是因为过去学了很多年英语,现在才对英语有很好的掌握)
一般过去时 只是陈述 过去发生的动作,没有强调对现在有什么影响
如:你列的题目。
希望对你有所帮助!!