Convertire un timestamp in data
Usa datetime.fromtimestamp() con un fuso esplicito. Senza l'argomento tz, Python crea una data locale senza informazioni sul fuso orario.
from datetime import datetime, timezone
ts = 1711972800
date = datetime.fromtimestamp(ts, tz=timezone.utc)
print(date.isoformat())
# 2024-04-01T12:00:00+00:00Ottenere i secondi Unix da una data
date = datetime(2024, 4, 1, 12, 0, 0, tzinfo=timezone.utc)
print(date.timestamp()) # 1711972800.0Convertire millisecondi senza aritmetica in virgola mobile
Dividere per 1.000 basta in molti casi. Per conservare una frazione esatta di microsecondi, separa i secondi interi dal 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:00Visualizzare l'ora a Parigi
from zoneinfo import ZoneInfo
print(date.astimezone(ZoneInfo('Europe/Paris')).isoformat())
# 2024-04-01T14:00:00.123000+02:00zoneinfo è disponibile da Python 3.9. I dati dei fusi devono essere installati nel sistema o forniti da tzdata.
Per misurare il tempo di esecuzione, usa time.perf_counter(). L'orologio di sistema può essere regolato durante l'esecuzione del programma.
Riferimenti
Python — datetime · zoneinfo · perf_counter
Versione italiana pubblicata il 26 settembre 2026.