Maison >développement back-end >Tutoriel Python >Comment analyser facilement les dates et heures ISO 8601 en 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!