← retour aux snippets

datetime: parser ISO 8601 avec fuseau horaire

Parser une date ISO avec offset et conserver l'information de fuseau.

python datetime #datetime#iso8601#timezone

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).