Convertir un timestamp a una fecha
Utiliza datetime.fromtimestamp() con una zona horaria explícita. Sin el argumento tz, Python crea una fecha local sin información de zona horaria.
from datetime import datetime, timezone
ts = 1711972800
date = datetime.fromtimestamp(ts, tz=timezone.utc)
print(date.isoformat())
# 2024-04-01T12:00:00+00:00Obtener segundos Unix a partir de una fecha
date = datetime(2024, 4, 1, 12, 0, 0, tzinfo=timezone.utc)
print(date.timestamp()) # 1711972800.0Convertir milisegundos sin aritmética de coma flotante
Dividir entre 1000 basta para muchos usos. Para conservar una fracción exacta de microsegundos, separa los segundos enteros del resto.
from datetime import timedelta
ms = 1711972800123
seconds, remainder = divmod(ms, 1000)
date = datetime.fromtimestamp(seconds, timezone.utc)
date += timedelta(milliseconds=remainder)
print(date.isoformat())
# 2024-04-01T12:00:00.123000+00:00Mostrar la hora de París
from zoneinfo import ZoneInfo
print(date.astimezone(ZoneInfo('Europe/Paris')).isoformat())
# 2024-04-01T14:00:00.123000+02:00zoneinfo está disponible desde Python 3.9. Los datos de zonas horarias deben estar instalados en el sistema o proporcionados por tzdata.
Para medir el tiempo de ejecución, utiliza time.perf_counter(). El reloj del sistema puede ajustarse durante la ejecución del programa.
Referencias
Python — datetime · zoneinfo · perf_counter
Versión en español publicada el 26 de septiembre de 2026.