...has moved to ... for 3 years.

j29682896

Senior Member
Taiwan - Mandarin Chinese
Hi everyone

I just came across a sentence "She has moved to the city for 3 years."

I am wondering if it is natural and correct.
Would it be better to say "She moved to the city 3 years ago." or "She has lived in the city for 3 years." Or I don't need to change anything because this is a good sentence.

Thank you.
 
  • dojibear

    Senior Member
    English (US - northeast)
    She has moved to the city for 3 years.
    This sentence does not mean either of these things:
    Would it be better to say "She moved to the city 3 years ago." or "She has lived in the city for 3 years."

    The original sentence is odd. It means "She has moved to the city, with a plan of living there for 3 years and then leaving".

    That could make sentence sense in this context: she is a university student, here for a 3-year course of study.
     

    j29682896

    Senior Member
    Taiwan - Mandarin Chinese
    Thank you for your reply,dojibear.

    But this sentence appear in an English grammar teaching material(created by a student), explaining present perfect tense, he want to to express that by adding "for", it can also imply duration, so I was wondering if the sentence should be modified.
     

    dojibear

    Senior Member
    English (US - northeast)
    "She has moved to the city." is a correct use of perfect tense. But "for three years" is incorrect.

    What duration are you asking about? Moving only takes 1 or 2 days. You don't spend 3 years "moving".
     

    j29682896

    Senior Member
    Taiwan - Mandarin Chinese
    What duration are you asking about? Moving only takes 1 or 2 days. You don't spend 3 years "moving".
    I was wondering the same thing too when I saw the sentence, so I thought it would be appropriate to replce "moved to" with "lived" , by doing so, the sentence would be "She has lived in the city for 3 years.", which is an example of present perfect tense and also illustrates using the preposition "for" to indicate duration.
     

    dojibear

    Senior Member
    English (US - northeast)
    Yes, that works. The problem is that the time frame (either past perfect or simple past) has 2 kinds of verbs in it:

    (1) verbs describing actions that last the entire time period:
    He lived there for three years.
    I've been a student for 3 years.
    I lived in Verona for 13 years.

    (2) verbs describing shorter actions that occured one or more times during the time period:
    He has visited me 5 times in the last 3 years.
    He moved twice in 3 years.
     
    Top