Wie man in Python String in datetime konvertiert

  1. datetime.strptime() um String in datetime zu konvertieren
  2. Python datetime.strptime() Beispiele

Dieses Tutorial führt ein, wie man string in Python in datetime konvertiert und listet auch einige Beispielcodes auf, um populäre datetime string Formate abzudecken.

datetime.strptime() um String in datetime zu konvertieren

Im vorherigen Tutorial haben wir gelernt wie man die Datumszeit im String-Format mit der Methode datetime.strftime() erhält. Wir werden die datetime.strptime() Methode verwenden, um die Revere Konvertierung durchzuführen, um das datetime Objekt zu erhalten. f und p bedeuten in diesen beiden Methoden format bzw. parse.

Die Methode datetime.strptime() parst den Eingabestring mit dem angegebenen datetime Format und gibt das datetime Objekt zurueck.

Das Basisbeispiel zur Verwendung dieser strptime() Methode ist unten dargestellt,

from datetime import datetime

datetime.strptime("2018-01-31", "%Y-%m-%d")

Das Ergebnis wird sein

datetime.datetime(2018, 1, 31, 0, 0)

Die Direktiven der Stringformat-Codes sind hier zu Ihrer Information aufgelistet

Richtlinie Bedeutung Beispiel
%a Wochentag als abgekürzter Name des Gebietsschemas. Sun, Mon, …, Sat (en_US);So, Mo, …, Sa (de_DE)
%A Wochentag als vollständiger Name des Gebietsschemas. Sunday, Monday, …, Saturday (en_US);Sonntag, Montag, …, Samstag (de_DE)
%w Wochentag als Dezimalzahl, wobei 0 für Sonntag und 6 für Samstag steht. 0, 1, …, 6
%d Tag des Monats als nullgefüllte Dezimalzahl. 01, 02, …, 31
%b Monat als abgekürzter Name des Gebietsschemas. Jan, Feb, …, Dec (en_US);Jan, Feb, …, Dez (de_DE)
%B Monat als vollständiger Name des Gebietsschemas. January, February, …, December (en_US);Januar, Februar, …, Dezember (de_DE)
%m Monat als nullgefüllte Dezimalzahl. 01, 02, …, 12
%y Jahr ohne Jahrhundert als nullgefüllte Dezimalzahl. 00, 01, …, 99
%Y Jahr mit Jahrhundert als Dezimalzahl. 0001, 0002, …, 2013, 2014, …, 9998, 9999
%H Stunde (24-Stunden-Uhr) als nullgefüllte Dezimalzahl. 00, 01, …, 23
%I Stunde (12-Stunden-Uhr) als nullgefüllte Dezimalzahl. 01, 02, …, 12
%p Das Äquivalent der Locale ist entweder AM oder PM. AM, PM (en_US);am, pm (de_DE)
%M Minute als nullgefüllte Dezimalzahl. 00, 01, …, 59
%S Zweitens als nullgefüllte Dezimalzahl. 00, 01, …, 59
%f Mikrosekunde als Dezimalzahl, links mit Null aufgefüllt. 000000, 000001, …, 999999
%z UTC-Offset in der Form ±HHHMM[SS] (leerer String, wenn das Objekt naiv ist) (leer), +0000, -0400, +1030
%Z Name der Zeitzone (leerer String, wenn das Objekt naiv ist). (leer), UTC, EST, CST
%j Tag des Jahres als nullgefüllte Dezimalzahl. 001, 002, …, 366
%U Wochennummer des Jahres (Sonntag als erster Tag der Woche) als nullgefüllte Dezimalzahl. Alle Tage im neuen Jahr, die dem ersten Sonntag vorausgehen, gelten als in Woche 0 liegend. 00, 01, …, 53
%W Wochennummer des Jahres (Montag als erster Tag der Woche) als Dezimalzahl. Alle Tage im neuen Jahr, die dem ersten Montag vorausgehen, gelten als in Woche 0 liegend. 00, 01, …, 53
%c Entsprechende Datums- und Zeitdarstellung des Gebietsschemas. Tue Aug 16 21:30:00 1988 (de_US);Di 16 Aug 21:30:00 1988 (de_DE)
%x Die entsprechende Datumsdarstellung des Gebietsschemas. 16.08.88 (keine);16.08.1988 (de_US);16.08.1988 (de_DE)
%X Die angemessene Zeitdarstellung des Gebietsschemas. 21:30:00 (en_US);21:30:00 (de_DE)
%% Ein wörtliches “%” Zeichen. %

Python datetime.strptime() Beispiele

7-Mai-2013 Datetime Format

from datetime import datetime

dateString = "7-May-2018"
dateFormatter = "%u-%b-%Y"
datetime.strptime(dateString, dateFormatter)

Ausgabe

datetime.datetime(2013, 5, 1, 0, 0)

31/12/2018 datetime format

from datetime import datetime

dateString = "31/12/2013"
dateFormatter = "%d/%m/%Y"
datetime.strptime(dateString, dateFormatter)

Ausgabe

datetime.datetime(2013, 12, 31, 0, 0)

Mon, 16 Juli 2018 Datetime Format

from datetime import datetime

dateString = "31/12/2013"
dateFormatter = "%d/%m/%Y"
datetime.strptime(dateString, dateFormatter)

Ausgabe

datetime.datetime(2018, 7, 16, 0, 0)

Montag, 16 Juli 2018 20:01:56 Datum-Zeit Format

from datetime import datetime

dateString = "Monday, July 16, 2018 20:01:56"
dateFormatter = "%A, %B %d, %Y %H:%M:%S"
datetime.strptime(dateString, dateFormatter)

Ausgabe:

datetime.datetime(2018, 7, 16, 20, 1, 56)

Verwandter Artikel - Python String

  • Wissenschaftliche Notation in Python
  • Konvertieren von Unicode-Zeichen in ASCII-String in Python
  • Verwandter Artikel - Python DateTime

  • Wie man in Python prüft, ob ein String eine Substring enthält
  • Großschreibung des ersten Buchstabens einer Zeichenkette in Python