1- Complete the following exercise :

I live in New York now ,but I ___________ (live) in Mexico for many years

The answer is "lived" as my grammar book mentioned, But why? ,Since we use the present prefect to talk about actions that have happened in the past without mentioning a specific time(Life experience), and we didn't mention a specific time so we have to use present perfect.

why did the book suppose that we used another use of present perfect (in this statement) which is an action that happened in the past and still continuing in the present, and this leads us to another question :

2- how to distinguish between different uses of present perfect ?

3-How to distinguish between using simple past or present perfect ?

Please this is the most confusing part to me ,I have read a lot about that but I am unable to understand that ,I have seen these :






Please, I want you to explain as much as you can and as simple as you can.

  • What did you think would go in the blank? Just so I can understand where you are coming from.
    – Laskio
    Aug 16, 2019 at 20:47
  • @Laskio ,I think it's "have lived" because we didn't mention a specific time, I supposed that we use this use of present perfect (an action that happened in the past at an unspecific time) OR (life experience). Aug 16, 2019 at 20:57
  • Both work fine. I think the question is just wanting to you only use that word without something before it. So only change the word "Live" to match the sentence. Saying either of those statements is grammatically correct.
    – Laskio
    Aug 16, 2019 at 21:00
  • @Laskio, Sorry , But the question is to put either the present perfect or past , It is in Essential Grammar in Use 3rd by Raymond Murphy page 51 Aug 16, 2019 at 21:04
  • Ah, my mistake. I am assuming it is saying that "for many years" is technically a certain time. Its not necessarily unspecified since they are talking about a time that they lived in Mexico and for how long. Its not the same as "I have lived in many cities" There is no time point, its unspecified.
    – Laskio
    Aug 16, 2019 at 21:08

1 Answer 1


The present perfect is somewhat confusing here because it may mean that you are still living in Mexico.

I have lived in Mexico for many years

can mean two things:

  1. I have lived in Mexico for many years and I am still living there

  2. I have lived in Mexico for many years and I have recently been to some other place


I live in New York now, but I lived in Mexico for many years

is correct, clear, and better explains the contrast.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .