Das Parsen von ISO 8601-Datum und -Uhrzeit mit Pythons dateutil.parser.isoparse
Das Parsen von ISO 8601-Datums- und Uhrzeitzeichenfolgen in den Datetime-Typ von Python kann sein eine Herausforderung, insbesondere wenn die strptime der Python-Standardbibliothek verwendet wird.
Lösung: Verwendung der Isoparse-Funktion von python-dateutil
Das Paket python-dateutil bietet mit seiner Funktion dateutil.parser.isoparse eine praktische Lösung. Isoparse zeichnet sich durch die Verarbeitung verschiedener ISO 8601-Formate aus, darunter:
Beispiele, die das Parsen verschiedener ISO 8601-Formate demonstrieren:
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
Zusätzliche Hinweise
python-dateutil also bietet dateutil.parser.parse an, das versucht, ungültige ISO zu interpretieren 8601 Saiten. Für eine strengere Analyse sollten Sie jedoch andere Optionen wie Regex oder einen dedizierten ISO 8601-Parser in Betracht ziehen.
Python 3.7 führte datetime.datetime.fromisoformat ein, das eine Teilmenge von ISO 8601-Zeichenfolgen analysiert. In Python 3.11 werden fast alle gültigen ISO 8601-Formate unterstützt. Es kann sich jedoch hinsichtlich der Flexibilität und Interpretation bestimmter Randfälle dennoch von Isoparse unterscheiden.
Das obige ist der detaillierte Inhalt vonWie kann Pythons „dateutil.parser.isoparse' verschiedene ISO 8601-Datums- und Zeitformate effizient verarbeiten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!