Present Perfect
Cuándo se usa
El present perfect conecta el pasado con el presente. No dice cuándo pasó algo, sino que cuenta ahora:
- Experiencias de vida: I have been to Japan.
- Acciones que empezaron en el pasado y siguen: We have lived here for ten years.
- Resultados visibles en el presente: She has lost her keys. (sigue sin ellas)
- Pasado muy reciente con just: They have just arrived.
Cómo se forma
have / has + participio pasado. El participio es la tercera columna de la lista de verbos: regular con -ed (worked), propio en los irregulares (seen, gone, done).
- since + momento concreto: since 2020, since Monday.
- for + duración: for three years, for a while.
Present perfect o past simple
Si el momento está cerrado y se menciona (yesterday, last year, in 2019), toca past simple. Si el periodo sigue abierto o el momento no importa, toca present perfect:
- I saw that film last night. (momento cerrado)
- I have seen that film. (experiencia, sin cuándo)
Present perfect o past perfect
Los dos miran atrás, pero desde sitios distintos:
- Desde ahora: I have lost my keys. (sigo sin ellas)
- Desde otro momento del pasado: I had lost my keys, so I could not open the door.
Si el punto de referencia es el presente, toca present perfect; si es un momento pasado del relato, toca past perfect.
Errores frecuentes
- Mezclarlo con marcadores de pasado cerrado: I have seen him yesterday ❌.
- Usar el pasado simple en vez del participio: I have saw ❌ → I have seen ✅.
- Traducir literalmente del español: Hace dos años que vivo aquí → I have lived here for two years (no I live here since two years).
Estructura
| Forma | Cómo se construye |
|---|---|
| Afirmativa | Sujeto + have / has + participio pasado |
| Negativa | Sujeto + have / has + not + participio pasado |
| Interrogativa | Have / Has + sujeto + participio pasado + ? |
Marcadores temporales
Ejemplos
Afirmativa
I have finished my homework.
He terminado los deberes.
She has lived in Madrid for three years.
Ella lleva tres años viviendo en Madrid.
They have just arrived at the airport.
Acaban de llegar al aeropuerto.
We have known each other since 2020.
Nos conocemos desde 2020.
I have called the clinic twice so far this morning.
He llamado dos veces a la clínica en lo que va de mañana.
I have just posted the letter.
Acabo de echar la carta.
We have already chosen a hotel.
Ya hemos elegido un hotel.
I have never broken a bone.
Nunca me he roto un hueso.
Negativa
We haven't seen that film yet.
Todavía no hemos visto esa película.
He hasn't answered my email.
Él no ha contestado a mi correo.
I haven't seen my cousins this week.
No he visto a mis primos esta semana.
We haven't had a holiday for three years.
No hemos tenido vacaciones en tres años.
Marta hasn't known Leo for very long.
Marta no conoce a Leo desde hace mucho tiempo.
He has not visited Scotland yet.
Él todavía no ha visitado Escocia.
She has lived in this flat since 2020.
Ella ha vivido en este piso desde 2020.
The team has won three matches this week.
El equipo ha ganado tres partidos esta semana.
Interrogativa
Have you ever tried Indian food?
¿Has probado alguna vez comida india?
How long has she worked here?
¿Cuánto tiempo lleva ella trabajando aquí?
Has he already sent the report?
¿Ya ha enviado él el informe?
Have they finished the project yet?
¿Han terminado ya el proyecto?
Have you spoken to Elena recently?
¿Has hablado con Elena recientemente?
Have you ever ridden a motorbike?
¿Has montado alguna vez en moto?
Have they finished the report so far?
¿Han terminado el informe hasta ahora?
Has your brother called recently?
¿Ha llamado tu hermano recientemente?