Python datetime So berechnen Sie Datumsangaben und konvertieren Zeichenfolgen strftime, strptime [Definitive Edition]

Python datetime So berechnen Sie Datumsangaben und konvertieren Zeichenfolgen strftime, strptime </ strong>

02.08.2019 Zuletzt aktualisiert

Hier wird der Python-Standard datetime verwendet, um das Datum timedelta () </ strong> abzurufen und zu berechnen, in eine Zeichenfolge strftime () </ strong> zu konvertieren und aus einer Zeichenfolge zu konvertieren strptime () </ strong> Ich werde erklären, wie es geht.

Klicken Sie hier, um eine Python-Umgebung auf einem Mac zu erstellen. Installieren Sie Python 3 auf einem Mac und erstellen Sie eine Umgebung [Definitive Edition]

Holen Sie sich jeden Wert der aktuellen Uhrzeit sowie Datum und Uhrzeit

Holen Sie sich die aktuellen Werte für Uhrzeit, Datum und Uhrzeit (Jahr, Monat, Tag, Stunde, Minute, Sekunde, Tag) von datetime.

import datetime


"""
Rufen Sie das aktuelle Datum und die aktuelle Uhrzeit von datetime ab
"""
now = datetime.datetime.now() # => datetime.datetime(2019, 8, 2, 1, 57, 9, 99551)


"""
Holen Sie sich jeden Wert von datetime
Jahr,Mond,Tag,Zeit,Protokoll,Sekunden
"""
now.year # => 2019
now.month # => 8
now.day # => 2
now.hour # => 1
now.minute # => 57
now.second # => 9


"""
Holen Sie sich den Tag von datetime
Korrespondenz zwischen Wochentag und Tag
    0:Mond, 1:Feuer, 2:Wasser, 3:Holz, 4:Geld, 5:Boden, 6:Tag
"""
now.weekday() # => 4

Zusätzlich zu Jahr, Monat, Tag, Stunde, Minute, Sekunde können Sie auch Mikrosekunden erhalten.

Datums- / Datumsberechnung (Addition, Subtraktion)

Verwenden Sie die Methode timedelta () </ strong>, um die Addition und Subtraktion von Datumsangaben mit "datetime" zu berechnen. Berechnungen, die das Datum ändern, sind ebenfalls möglich.

import datetime


"""
Datumsberechnung von Datum / Uhrzeit
     weeks, days, hours, minutes, seconds
"""
now = datetime.datetime.now() # => datetime.datetime(2019, 8, 2, 1, 59, 33, 338054)

#1 Woche zusätzlich
now + datetime.timedelta(weeks=1) # => datetime.datetime(2019, 8, 9, 1, 59, 33, 338054)
#10 Tage Subtraktion
now - datetime.timedelta(days=10) # => datetime.datetime(2019, 7, 23, 1, 59, 33, 338054)
#10 Stunden Zugabe
now + datetime.timedelta(hours=10) # => datetime.datetime(2019, 8, 2, 11, 59, 33, 338054)
#10 Minuten Subtraktion
now - datetime.timedelta(minutes=10) # => datetime.datetime(2019, 8, 2, 1, 49, 33, 338054)
#10 Sekunden Zugabe
now + datetime.timedelta(seconds=10) # => datetime.datetime(2019, 8, 2, 1, 59, 43, 338054)

#Der 7 ..,1 Stunde,10 Minuten Zugabe
now + datetime.timedelta(days=7, hours=1, seconds=10) # => datetime.datetime(2019, 8, 9, 2, 59, 43, 338054)

Neben Wochen können auch Tage, Stunden, Minuten, Sekunden, Millisekunden und Mikrosekunden berechnet werden.

Konvertieren Sie Datum / Uhrzeit, Datum in Zeichenfolge

Verwenden Sie die Methode strftime () </ strong>, um von "datetime", "date" in eine Zeichenfolge zu konvertieren.

import datetime


"""
Von Datum / Uhrzeit in Zeichenfolge konvertieren
"""
now = datetime.datetime.now()


#Beispiel 1
now.strftime('%Y-%m-%d %H:%M:%S') # => '2019-08-02 02:20:43'
#Beispiel 2
now.strftime('%Y Jahr%m Monat%d Tag') # => '08/02/2019'
#Beispiel 3
now.strftime('%A, %B %d, %Y') # => 'Friday, August 02, 2019'

Konvertieren Sie von Zeichenfolge in Datum / Uhrzeit, Datum

Verwenden Sie die Methode strptime () </ strong>, um eine Zeichenfolge in "datetime", "date" zu konvertieren.

import datetime


"""
Konvertieren Sie von Zeichenfolge in Datum / Uhrzeit
"""
#Beispiel 1
string_date_1 = '2019/08/02'
datetime.datetime.strptime(string_date_1, '%Y/%m/%d') # => datetime.datetime(2019, 8, 2, 0, 0)
#Beispiel 2
string_date_2 = '2019/08/02 2:03:07'
datetime.datetime.strptime(string_date_2, '%Y/%m/%d %H:%M:%S') # => datetime.datetime(2019, 8, 2, 2, 3, 7)
#Beispiel 3
string_date_3 = '2019-08-02 12:06:19'
datetime.datetime.strptime(string_date_3, '%Y-%m-%d %H:%M:%S') # => datetime.datetime(2019, 8, 2, 12, 6, 19)


"""
string,Konvertieren von Datum / Uhrzeit zu Datum
"""
string_date = '2019/08/02 12:06:19'
# string to datetime
dt = datetime.datetime.strptime(string_date, '%Y/%m/%d %H:%M:%S') # => datetime.datetime(2019, 8, 2, 12, 6, 19)
# datetime to date
datetime.date(dt.year, dt.month, dt.day) # => datetime.date(2019, 8, 2)

Zusammenfassung

Es war eine Erklärung, wie man Datum und Uhrzeit nach "Datum / Uhrzeit" erhält und berechnet und wie man aus einer Zeichenkette konvertiert. Der Typ "datetime" ist praktisch, da er beim Erstellen eines Diagramms mit "matplotlib" oder "plotly" wie für die Achse verwendet werden kann.

Offizielle Dokumentation zu datetime

** Like ** wird zu Motivation führen, daher würde ich mich freuen, wenn Sie darauf drücken könnten.

Recommended Posts