objectif
Parser une date ISO avec offset et conserver l’information de fuseau.
code minimal
from datetime import datetime
dt = datetime.fromisoformat("2025-01-01T12:00:00+00:00")
print(dt.tzinfo is not None and dt.utcoffset().total_seconds() == 0.0) # attendu: True
utilisation
from datetime import datetime, timezone
now_utc = datetime.now(timezone.utc)
print(now_utc.tzinfo is not None)
variante(s) utile(s)
from datetime import datetime
s = "2025-01-01T12:00:00Z".replace("Z", "+00:00")
print(datetime.fromisoformat(s).tzinfo is not None)
notes
- fromisoformat supporte les offsets “+HH:MM”.
- Pour les formats exotiques, utilisez dateutil.parser (lib externe).