Heim > Backend-Entwicklung > Python-Tutorial > Wie kann Pythons „dateutil.parser.isoparse' verschiedene ISO 8601-Datums- und Zeitformate effizient verarbeiten?

Wie kann Pythons „dateutil.parser.isoparse' verschiedene ISO 8601-Datums- und Zeitformate effizient verarbeiten?

Mary-Kate Olsen
Freigeben: 2024-12-28 13:50:40
Original
700 Leute haben es durchsucht

How can Python's `dateutil.parser.isoparse` efficiently handle various ISO 8601 date and time formats?

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:

  • RFC 3339-Datums-/Uhrzeitzeichenfolgen (z. B. „2008-09-03T20:56:35.450686Z“)
  • Erweiterte ISO 8601-Formate (z.B., „2008-09-03T20:56:35.450686“)
  • Grundlegende ISO 8601-Formate (z. B. „20080903T205635.450686“)
  • Nur ​​Datumsformate (z. B. "20080903")

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
Nach dem Login kopieren

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!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage