在英语的现在完成时中使用for的问题

在中学里学习现在完成时的语法,讲述持续一段时间,是 现在完成时 + for XX 时间
但是现在我看到 也有 过去式 + for XX 时间 的用法。
比如以下例句:
我在深圳住了几个月,在台北住了三年。
百度翻译是: I lived in Shenzhen for several months and in Taipei for three years.
按我原来的理解是 : I have lived/been in Shenzhen for several months ... for ...

请问这两种翻译有什么不同吗? 又或者就根本是我理解错了呢 ?

首先要清楚现在完成时是与现在产生联系的,是过去的动作延续到现在,所以如果按照你的理解的话 I have lived in Shenzhen for several months的话就是目前依然住在深圳
而I lived in Shenzhen for several months 的话就与现在没有任何关系了,我可以是几年前住过3个月,也可以是去年住过三个月,反正就以前曾经在台湾住过一段时间的意思。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-01-15
1 现在完成时主要表示动作从过去开始,一直持续到现在,并对现在造成了某种影响;
2 现在完成进行时主要是在现在完成时的基础上,强调动作尚未完全结束,而处于进行的动态之中。
第2个回答  2019-01-15
用过去时lived 表示说话人曾经在深圳住了几个月,在台北住了三年,说话人现在既不在深圳也不在台北。追答

如果用现在完成时,后面不好用两个地方,因为它表达的是到说话时还住在那里。如: I have lived in Taipei for three years. 我在台北已经住了三年。(表达三年前开始,一直住到现在说这话时三年时间。现在还住在台北。)

欢迎能继续讨论。

追问

我自己琢磨了一下,似乎 用不用 for ... 和现在完成时 是没有关系的, 这样符合实际的语境就行了
可以这样说吗 ?

追答

对于初中生,为了便利于掌握现在完成时,常告诉他们有for短语就用现在完成时。实际上正如你所说的,只要符合语境就行了。

追问

好的,明白了,十分感谢

本回答被提问者采纳
第3个回答  2019-01-15
I lived in Shenzhen for several months and in Taipei for three years.过去住在深圳,现在没有住在深圳。
I have lived/been in Shenzhen for several months ... for .我已经住在深圳,现在有没有住在深圳我不知道。
for加一段时间,at加时间点
第4个回答  2019-01-16
1。 为, 为了
They fought for national independence。
他们为民族独立而战。
This letter is for you。
这是你的信。
2。 代替; 代表
We used boxes for chairs。