Maison >développement back-end >Tutoriel Python >Comment analyser facilement les dates et heures ISO 8601 en Python ?

Comment analyser facilement les dates et heures ISO 8601 en Python ?

Barbara Streisand
Barbara Streisandoriginal
2024-12-18 21:37:12551parcourir

How to Easily Parse ISO 8601 Dates and Times in Python?

Comment analyser une date et une heure au format ISO 8601 en Python

La fonction strptime de Python n'est pas idéale pour analyser des chaînes de date et d'heure au format ISO 8601. Pour une solution plus pratique, envisagez la fonction isoparse du package python-dateutil.

Fonction isoparse

isoparse est conçue spécifiquement pour analyser les chaînes datetime ISO 8601 telles que "2008 -09-03T20:56:35.450686Z". Il gère également d'autres formats de date et d'heure ISO 8601, tels que ceux sans décalage UTC ou représentant uniquement une date.

import dateutil.parser
datetime_object = dateutil.parser.isoparse('2008-09-03T20:56:35.450686Z')

Comparaison avec datetime.datetime.fromisoformat de Python

Dans Python 3.7 et versions antérieures, datetime.datetime.fromisoformat n'est pas un analyseur complet au format ISO 8601. Il ne prend en charge qu'un sous-ensemble de formats ISO 8601 valides. Dans Python 3.11, fromisoformat prend en charge presque toutes les chaînes ISO 8601 valides.

Gestion des erreurs de lecture

isoparse et d'autres analyseurs indulgents peuvent potentiellement mal lire certaines chaînes. Pour une analyse plus stricte, envisagez d'utiliser une bibliothèque différente ou d'implémenter votre propre logique d'analyse.

Conclusion

La fonction isoparse de python-dateutil fournit un moyen pratique et complet de analyser les chaînes de date et d'heure au format ISO 8601 en Python. Il prend en charge un large éventail de formats et gère correctement les décalages UTC.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn