Maison >développement back-end >Tutoriel Python >Comment « dateutil.parser.isoparse » de Python peut-il gérer efficacement divers formats de date et d'heure ISO 8601 ?
Analyse de la date et de l'heure ISO 8601 avec le type dateutil.parser.isoparse de Python
L'analyse des chaînes de date et d'heure ISO 8601 dans le type datetime de Python peut être difficile, en particulier lors de l'utilisation du strptime de la bibliothèque standard Python.
Solution : Utilisation de la fonction isoparse de python-dateutil
Le package python-dateutil offre une solution pratique avec sa fonction dateutil.parser.isoparse. Isoparse excelle dans la gestion de divers formats ISO 8601, notamment :
Exemples illustrant l'analyse de divers formats ISO 8601 :
import dateutil.parser iso_datetime = "2008-09-03T20:56:35.450686Z" print(dateutil.parser.isoparse(iso_datetime)) # datetime with UTC timezone iso_extended = "2008-09-03T20:56:35.450686" print(dateutil.parser.isoparse(iso_extended)) # datetime without timezone iso_basic = "20080903T205635.450686" print(dateutil.parser.isoparse(iso_basic)) # datetime without timezone iso_date = "20080903" print(dateutil.parser.isoparse(iso_date)) # date
Notes supplémentaires
python-dateutil également propose dateutil.parser.parse, qui tente d'interpréter la norme ISO 8601 invalide cordes. Cependant, pour une analyse plus stricte, envisagez d'autres options comme les expressions régulières ou un analyseur ISO 8601 dédié.
Python 3.7 a introduit datetime.datetime.fromisoformat, qui analyse un sous-ensemble de chaînes ISO 8601. Dans Python 3.11, il prend en charge presque tous les formats ISO 8601 valides. Cependant, il peut encore différer d'isoparse en termes de flexibilité et d'interprétation de certains cas extrêmes.
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!