Python DateTime, TimeDelta, Strftime(Format) mit Beispielen
In Python date, time und datetime Klassen bietet eine Reihe von Funktionen zum Umgang mit Datumsangaben, Uhrzeiten und Zeitintervallen. Date und datetime in Python sind die Objekte. Wenn Sie sie also manipulieren, manipulieren Sie tatsächlich Objekte und keine Zeichenfolgen oder Zeitstempel. Immer wenn Sie Datum oder Uhrzeit manipulieren, müssen Sie die datetime-Funktion importieren.
Die Datetime-Klassen in Python sind in 5 Hauptklassen kategorisiert.
- date – Manipuliert nur das Datum (Monat, Tag, Jahr)
- time – Uhrzeit unabhängig vom Tag (Stunde, Minute, Sekunde, Mikrosekunde)
- datetime – Kombination aus Zeit und Datum (Monat, Tag, Jahr, Stunde, Sekunde, Mikrosekunde)
- timedelta— Eine Zeitdauer, die zum Manipulieren von Daten verwendet wird
- tzinfo— Eine abstrakte Klasse für den Umgang mit Zeitzonen
In diesem Tutorial werden wir lernen-
- Verwendung der Date- und DateTime-Klasse
- Datum mit date.today() drucken
- Python Aktuelles Datum und Uhrzeit:now() today()
- So formatieren Sie die Ausgabe von Datum und Uhrzeit mit Strftime()
- Verwendung von Timedelta-Objekten
Verwendung der Date- und DateTime-Klasse
Schritt 1 ) Bevor Sie den Code für das datetime-Format in Python ausführen, ist es wichtig, dass Sie die Python-Date-Time-Module wie im Screenshot unten gezeigt importieren.
Diese Importanweisungen sind vordefinierte Funktionen in der Python-Bibliothek, mit denen Sie Datums- und Zeitangaben bearbeiten können, ohne Code schreiben zu müssen.
Berücksichtigen Sie die folgenden Punkte, bevor Sie den Python-Code für das Datum/Uhrzeit-Format ausführen
from datetime import date
Diese Zeile weist den Python-Interpreter an, die Datumsklasse aus dem datetime-Modul in Python zu importieren. Wir schreiben den Code für diese Datumsfunktion nicht, sondern importieren ihn nur für unsere Verwendung
Schritt 2 ) Als nächstes erstellen wir eine Instanz des Datumsobjekts.
Schritt 3 ) Als nächstes drucken wir das Datum und führen den Code aus.
Die Ausgabe ist wie erwartet.
Datum mit date.today() drucken
date.today
Funktion sind mehrere Eigenschaften zugeordnet. Wir können einzelne Tage/Monate/Jahre und viele andere Dinge drucken
Sehen wir uns ein Beispiel an
Zahl des heutigen Wochentages
Die Funktion date.today() gibt Ihnen auch die Nummer des Wochentags. Hier ist die Wochentagstabelle, die mit Montag als 0 und Sonntag als 6 beginnt
Wochentagnummer ist nützlich für Arrays, deren Index vom Wochentag abhängt.
Python Aktuelles Datum und Uhrzeit:now() today()
Schritt 1) Wie Datumsobjekte können wir auch „DATETIME OBJECTS“ verwenden in Python. Datums- und Zeitobjekte in Python geben das Datum zusammen mit der Uhrzeit in Stunden, Minuten, Sekunden und Millisekunden aus
Wenn wir den Code für datetime ausführen, gibt er die Ausgabe mit dem aktuellen Datum und der aktuellen Uhrzeit aus.
Schritt 2) Mit „DATETIME OBJECT“ können Sie auch die Zeitklasse aufrufen.
Angenommen, wir möchten nur die aktuelle Uhrzeit ohne das Datum drucken.
t = datetime.time(datetime.now())
- Wir hatten die Zeitklasse importiert. Wir werden ihm mit datetime.now() den aktuellen Zeitwert zuweisen
- Wir weisen der Variablen t den Wert der aktuellen Zeit zu.
Und das wird mir gerade die Zeit geben. Lassen Sie uns also dieses Programm ausführen.
Okay, Sie können also sehen, dass ich hier das Datum und die Uhrzeit habe. Und dann die nächste Zeile, I've got just the time by yourself
Schritt 3) Wir werden unseren Wochentags-Indexer auf die ArrayList unseres Wochentags anwenden, um zu wissen, welcher Tag heute ist
- Dem Wochentagsoperator (wd) wird die Zahl von (0-6) zugewiesen, je nachdem, was der aktuelle Wochentag ist. Hier haben wir das Array der Liste für Tage deklariert (Mo, Di, Mi…So).
- Verwenden Sie diesen Indexwert, um zu wissen, welcher Tag heute ist. In unserem Fall ist es #2 und steht für Mittwoch, also wird in der Ausgabe „Was ist ein Mittwoch.“ ausgegeben
Hier ist der vollständige Code zum Abrufen des aktuellen Datums und der aktuellen Uhrzeit mit datetime now
from datetime import date from datetime import time from datetime import datetime def main(): ##DATETIME OBJECTS #Get today's date from datetime class today=datetime.now() #print (today) # Get the current time #t = datetime.time(datetime.now()) #print "The current time is", t #weekday returns 0 (monday) through 6 (sunday) wd=date.weekday(today) #Days start at 0 for monday days= ["monday","tuesday","wednesday","thursday","friday","saturday","sunday"] print("Today is day number %d" % wd) print("which is a " + days[wd]) if __name__== "__main__": main()
So formatieren Sie die Ausgabe von Datum und Uhrzeit mit Strftime()
Bis jetzt haben wir gelernt, wie man datetime und date object in Python verwendet. Wir werden einen Schritt weiter gehen und lernen, wie man eine Formatierungsfunktion verwendet, um Uhrzeit und Datum zu formatieren.
Schritt 1) Zuerst sehen wir einen einfachen Schritt zum Formatieren des Jahres. Es ist besser, mit einem Beispiel zu verstehen.
- Wir haben die „strftime-Funktion“ verwendet zum Formatieren.
- Diese Funktion verwendet einen anderen Steuercode um eine Ausgabe zu geben.
- Jeder Kontrollcode ähnelt verschiedenen Parametern wie Jahr, Monat, Wochentag und Datum [(%y/%Y – Jahr), (%a/%A- Wochentag), (%b/%B- Monat) , (%d – Tag des Monats)] .
- In unserem Fall ist es (“%Y”) was Jahr ähnelt, gibt es das ganze Jahr mit dem Jahrhundert aus (z. B. 2018).
Schritt 2) Wenn Sie nun („%Y“) durch Kleinbuchstaben ersetzen, d. h. („%y“) und den Code ausführen, wird in der Ausgabe nur (18) und nicht (2018) angezeigt. Das Jahrhundert des Jahres wird nicht wie im Screenshot unten angezeigt
Schritt 3) Die Strf-Funktion kann Datum, Tag, Monat und Jahr separat deklarieren. Auch mit kleinen Änderungen im Steuercode in der strftime-Funktion können Sie den Stil des Textes formatieren.
Wenn Sie innerhalb der strftime-Funktion (%a) durch das große A ersetzen, d. h. (%A), wird die Ausgabe als „Firday“ statt nur als Abkürzung „Fr“ ausgegeben.
Schritt 4) Mit Hilfe der „Strftime“-Funktion können wir auch die lokale Systemzeit, das Datum oder beides abrufen.
- %C- gibt das lokale Datum und die Uhrzeit an
- %x- gibt das lokale Datum an
- %X- gibt die Ortszeit an
In der Ausgabe sehen Sie das Ergebnis wie erwartet
Schritt 5) Mit der „strftime-Funktion“ können Sie die Zeit in jedem beliebigen Format 24 Stunden oder 12 Stunden aufrufen.
Durch einfaches Definieren von Steuercodes wie %I/H für Stunde, %M für Minute, %S für Sekunde, kann man Zeit für verschiedene Formate abrufen
12 Stunden Zeit wird deklariert [print now.strftime(“%I:%M:%S %p) ]
24 Stunden Zeit wird deklariert [print now.strftime(“%H:%M”)]
Hier ist der vollständige Code zum Konvertieren von datetime in ein String-Objekt.
# #Example file for formatting time and date output # from datetime import datetime def main(): #Times and dates can be formatted using a set of predefined string #Control codes now= datetime.now() #get the current date and time #%c - local date and time, %x-local's date, %X- local's time print(now.strftime("%c")) print(now.strftime("%x")) print(now.strftime("%X")) ##### Time Formatting #### #%I/%H - 12/24 Hour, %M - minute, %S - second, %p - local's AM/PM print(now.strftime("%I:%M:%S %p")) # 12-Hour:Minute:Second:AM print(now.strftime("%H:%M")) # 24-Hour:Minute if __name__== "__main__": main()
Was ist Timedelta in Python?
Zeitdelta in Python ist ein Objekt, das die Dauer darstellt. Es wird hauptsächlich verwendet, um die Dauer zwischen zwei Daten und Uhrzeiten zu berechnen. Es wird auch zum Abrufen des Objekts mit einem Delta-Datum und einer Uhrzeit verwendet. Das timedelta-Objekt unterstützt mathematische Operationen wie Additionen, Subtraktionen, Multiplikationen, Divisionen etc.
Wie man Timedelta-Objekte verwendet
Mit Python-Zeitdelta-Objekten können Sie die Zeit sowohl für die Zukunft als auch für die Vergangenheit schätzen. Mit anderen Worten, es ist eine Zeitspanne, um einen bestimmten Tag, ein bestimmtes Datum oder eine bestimmte Uhrzeit vorherzusagen.
Denken Sie daran, dass diese Funktion nicht zum Ausdrucken der Uhrzeit oder des Datums dient, sondern um etwas über die Zukunft oder Vergangenheit zu BERECHNEN . Sehen wir uns ein Python-Timedelta-Beispiel an, um es besser zu verstehen.
Schritt 1) Um Timedelta-Objekte auszuführen, müssen Sie zuerst die Import-Anweisung deklarieren und dann den Code ausführen
- Importanweisung für timedelta schreiben
- Schreiben Sie jetzt den Code, um das Objekt aus dem Zeitdelta auszudrucken, wie im Screenshot gezeigt
- Führen Sie den Code aus. Das Zeitdelta stellt eine Spanne von 365 Tagen, 8 Stunden und 15 Minuten dar und gibt dasselbe aus
Verwirrend? Der nächste Schritt wird helfen-
Schritt 2) Holen wir uns das heutige Datum und die Uhrzeit, um zu überprüfen, ob unsere Import-Anweisung gut funktioniert. Wenn der Code ausgeführt wird, gibt er das heutige Datum aus, was bedeutet, dass unsere Importanweisung gut funktioniert
Schritt 3) Wir werden sehen, wie wir das Datum in einem Jahr von jetzt an durch Delta-Objekte abrufen können. Wenn wir den Code ausführen, gibt er die erwartete Ausgabe aus.
Schritt 4) Ein weiteres Beispiel dafür, wie das Zeitdelta verwendet werden kann, um das zukünftige Datum aus dem aktuellen Datum und der aktuellen Uhrzeit zu berechnen
Schritt 5) Schauen wir uns ein komplexeres Beispiel an. Ich möchte bestimmen, wie viele Tage nach Neujahr vergangen sind. So werden wir vorgehen
- Mit today=date.today() erhalten wir das heutige Datum
- Wir wissen, dass Neujahr immer am 1. Januar ist, aber das Jahr könnte anders sein. Mit nyd=date(today.year,1,1) speichern wir das neue Jahr in der Variablen nyd
- if nyd
- ((today-nyd).days) gibt die Differenz zwischen einem aktuellen Datum und dem neuen Jahr in DAYS an
Die Ausgabe zeigt, dass „Neujahr schon vor 11 Tagen vergangen ist.“
Hier ist der vollständige Arbeitscode
# # Example file for working with timedelta objects # from datetime import date from datetime import time from datetime import datetime from datetime import timedelta # construct a basic timedelta and print it print (timedelta(days=365, hours=8, minutes=15)) # print today's date print ("today is: " + str(datetime.now())) # print today's date one year from now print ("one year from now it will be:" + str(datetime.now() + timedelta(days=365))) # create a timedelta that uses more than one argument # print (in one week and 4 days it will be " + str(datetime.now() + timedelta(weeks=1, days=4))) # How many days until New Year's Day? today = date.today() # get todays date nyd = date(today.year, 1, 1) # get New Year Day for the same year # use date comparison to see if New Year Day has already gone for this year # if it has, use the replace() function to get the date for next year if nyd < today: print ("New Year day is already went by %d days ago" % ((today - nyd).days))
Python 2-Beispiel
from datetime import date from datetime import time from datetime import datetime def main(): ##DATETIME OBJECTS #Get today's date from datetime class today=datetime.now() #print today # Get the current time #t = datetime.time(datetime.now()) #print "The current time is", t #weekday returns 0 (monday) through 6 (sunday) wd = date.weekday(today) #Days start at 0 for monday days= ["monday","tuesday","wednesday","thursday","friday","saturday","sunday"] print "Today is day number %d" % wd print "which is a " + days[wd] if __name__== "__main__": main()
# #Example file for formatting time and date output # from datetime import datetime def main(): #Times and dates can be formatted using a set of predefined string #Control codes now= datetime.now() #get the current date and time #%c - local date and time, %x-local's date, %X- local's time print now.strftime("%c") print now.strftime("%x") print now.strftime("%X") ##### Time Formatting #### #%I/%H - 12/24 Hour, %M - minute, %S - second, %p - local's AM/PM print now.strftime("%I:%M:%S %p") # 12-Hour:Minute:Second:AM print now.strftime("%H:%M") # 24-Hour:Minute if __name__== "__main__": main()
# # Example file for working with timedelta objects # from datetime import date from datetime import time from datetime import datetime from datetime import timedelta # construct a basic timedelta and print it print timedelta(days=365, hours=8, minutes=15) # print today's date print "today is: " + str(datetime.now()) # print today's date one year from now print "one year from now it will be:" + str(datetime.now() + timedelta(days=365)) # create a timedelta that uses more than one argument # print "in one week and 4 days it will be " + str(datetime.now() + timedelta(weeks=1, days=4)) # How many days until New Year's Day? today = date.today() # get todays date nyd = date(today.year, 1, 1) # get New Year Day for the same year # use date comparison to see if New Year Day has already gone for this year # if it has, use the replace() function to get the date for next year if nyd < today: print "New Year day is already went by %d days ago" % ((today - nyd).days)
Zusammenfassung
Für die Bearbeitung von Datums- und Zeitangaben auf einfache und komplexe Weise stellt das datetime-Modul verschiedene Klassen oder Kategorien wie
bereit- date – Manipuliert nur das Datum (Monat, Tag, Jahr)
- time – Uhrzeit unabhängig vom Tag (Stunde, Minute, Sekunde, Mikrosekunde)
- datetime – Kombination aus Zeit und Datum (Monat, Tag, Jahr, Stunde, Sekunde, Mikrosekunde)
- timedelta— Eine Zeitdauer, die zum Manipulieren von Daten verwendet wird
- tzinfo— Eine abstrakte Klasse für den Umgang mit Zeitzonen
Datetime-Objekte verwenden
- Das Importieren von Datetime-Objekten vor dem Ausführen des Codes ist obligatorisch
- Verwendung der date.today-Funktion zum Drucken von individuellem Datum/Monat/Jahr sowie Indizierung des Tages
- Date.time-Objekt verwenden, um Zeit in Stunden, Minuten, Sekunden und Millisekunden zu erhalten
Zeitüberschreitung mit „str f time function“ formatieren
- Verwenden Sie „str f time function“, um das Format des Jahres zu ändern
- Tag, Datum, Monat und Jahr separat drucken
- Anrufzeit für jedes Format 12 Stunden oder 24 Stunden
Timedelta-Objekte
- Mit timedelta-Objekten können Sie die Zeit sowohl für die Zukunft als auch für die Vergangenheit schätzen
- Berechnen Sie die Gesamtzahl der verbleibenden Tage für den besonderen Tag (Geburtstag) ab der aktuellen Uhrzeit
- Berechnen Sie die Gesamtzahl der vergangenen Tage für einen besonderen Tag (Geburtstag) ab der aktuellen Uhrzeit
Python
- Python-Datetime
- Wie bekomme ich das aktuelle Datum und die Uhrzeit in Python?
- Python Holen Sie sich die aktuelle Zeit
- Python-Zeitmodul
- Python-Schlaf()
- Python Print()-Anweisung:Drucken mit Beispielen
- Python String count() mit BEISPIELE
- Python String format() Erklären Sie mit BEISPIELE
- Python String find() Methode mit Beispielen
- Python-Lambda-Funktionen mit BEISPIELE