Python Datum/Uhrzeit, UhrzeitDelta, Strftime(Format) mit Beispielen

โšก Intelligente Zusammenfassung

Python Das Modul `datetime` verarbeitet zusammen mit den Klassen `date`, `time` und `timedelta` Datums-, Zeit- und Intervallwerte als Objekte. Es formatiert die Ausgabe mit `strftime()`, analysiert Zeichenketten und berechnet zukรผnftige oder vergangene Zeitpunkte mithilfe der `timedelta`-Arithmetik.

  • ๐Ÿ”˜ Fรผnf Klassen: Das Modul datetime gruppiert die Klassen date, time, datetime, timedelta und tzinfo fรผr Datums- und Zeitberechnungen.
  • โ˜‘๏ธ Aktuelle Werte: datetime.now() und date.today() geben das aktuelle Datum und die aktuelle Uhrzeit einschlieรŸlich der Wochentagsnummer zurรผck.
  • โœ… Formatierung: Die Funktion strftime() wandelt ein Datum/eine Uhrzeit mithilfe von Steuercodes wie %Y, %A und %H in lesbaren Text um.
  • ๐Ÿงช Timedelta: Ein timedelta-Objekt misst eine Dauer und prognostiziert zukรผnftige oder vergangene Daten durch Addition und Subtraktion.traction.
  • ๏ธ Richtlinien: Die gleichen Steuercodes steuern strftime() fรผr die Ausgabe und strptime() fรผr das Einlesen einer Zeichenkette zurรผck in ein Datum/eine Uhrzeit.
  • ๐Ÿค– KI-Workflows: Maschinelles Lernen leitet aus Pipelines Datums- und Zeitmerkmale wie Wochentag und Stunde fรผr Zeitreihenmodelle ab.

Python Terminzeit

In Python, Datum, Uhrzeit und Datum/Uhrzeit Klassen bieten eine Reihe von Funktionen zur Verarbeitung von Datum, Uhrzeit und Zeitintervallen. Datum und Datum/Uhrzeit in Python Da es sich um Objekte handelt, bearbeiten Sie beim Manipulieren tatsรคchlich Objekte und nicht Zeichenketten oder Zeitstempel. Immer wenn Sie Datum oder Uhrzeit bearbeiten, mรผssen Sie das Datums-/Zeitmodul importieren.

Die Datetime-Klassen in Python werden in 5 Hauptklassen eingeteilt.

  • date โ€“ Nur das Datum manipulieren (Monat, Tag, Jahr)
  • Zeit โ€“ Zeit unabhรคngig vom Tag (Stunde, Minute, Sekunde, Mikrosekunde)
  • datetime โ€“ Kombination aus Uhrzeit und Datum (Monat, Tag, Jahr, Stunde, Sekunde, Mikrosekunde)
  • timedeltaโ€” Eine Zeitspanne, die zur Manipulation von Daten verwendet wird
  • tzinfoโ€” Ein Abstract-Klasse zur Behandlung von Zeitzonen

So verwenden Sie die Date- und DateTime-Klasse

Schritt 1:) Bevor Sie den Code fรผr das Datums-/Uhrzeitformat in Pythonist es wichtig, dass Sie die Python Datums- und Uhrzeitmodule, wie im Screenshot unten gezeigt.

Verwenden Sie die Date- und DateTime-Klasse

Diese Importanweisungen sind vordefinierte Funktionalitรคten im Python Bibliothek, mit der Sie Datum und Uhrzeit bearbeiten kรถnnen, ohne Code schreiben zu mรผssen.

Beachten Sie die folgenden Punkte vor der Ausfรผhrung des Python Datums-/Uhrzeitformatcode

from datetime import date

Diese Zeile sagt dem Python Interpreter zum Importieren der Datumsklasse aus dem Datetime-Modul in PythonWir schreiben den Code fรผr diese Datumsfunktionalitรคt nicht selbst, sondern importieren ihn lediglich fรผr unsere Zwecke.

Datum mit date.today() drucken

Die Funktion date.today() verfรผgt รผber verschiedene Eigenschaften. Wir kรถnnen damit unter anderem den Tag, Monat und das Jahr ausgeben.

Lass uns ein Beispiel sehen

Datum mit date.today() drucken

Die heutige Wochentagsnummer

Die Funktion date.today() gibt Ihnen auch die Wochentagsnummer zurรผck. Hier ist die Wochentagstabelle, die mit folgendem beginnt: Monday als 0 und Sonntag als 6.

Tag Wochentagsnummer
Monday 0
Dienstag 1
Mittwoch 2
Donnerstag 3
Freitag 4
Samstag 5
Sonntag 6

Die Wochentagsnummer ist nรผtzlich fรผr Arrays, deren Index vom Wochentag abhรคngt.

Datum mit date.today() drucken

Schritt 2:) Als nรคchstes erstellen wir eine Instanz des Datumsobjekts.

Verwenden Sie die Date- und DateTime-Klasse

Schritt 3:) Als nรคchstes drucken wir das Datum aus und fรผhren den Code aus.

Verwenden Sie die Date- und DateTime-Klasse

Das Ergebnis entspricht den Erwartungen.

Python Aktuelles Datum und Uhrzeit: jetzt() heute()

Schritt 1) Wie Datumsobjekte kรถnnen wir auch verwenden โ€žDATETIME-OBJEKTEโ€œ in Python. Python Datums- und Zeitobjekte geben Datum und Zeit an in Stunden, Minuten, Sekunden und Millisekunden.

Python Aktuelles Datum und Uhrzeit

Wenn wir den Code fรผr datetime ausfรผhren, wird die Ausgabe mit dem aktuellen Datum und der aktuellen Uhrzeit ausgegeben.

Schritt 2) Mit โ€žDATETIME OBJECTโ€œ kรถnnen Sie auch die Zeitklasse aufrufen. Angenommen, wir mรถchten nur die aktuelle Uhrzeit ohne Datum ausgeben.

t = datetime.time(datetime.now())
  • Wir hatten die Zeitklasse importiert. Wir werden ihm mithilfe von datetime.now() den aktuellen Zeitwert zuweisen.
  • Wir weisen der Variablen t den Wert der aktuellen Zeit zu.

Und das wird mir genau die Zeit geben. Lassen Sie uns also dieses Programm ausfรผhren.

Python Aktuelles Datum und Uhrzeit

Okay, wie Sie sehen, habe ich hier Datum und Uhrzeit. Und in der nรคchsten Zeile steht nur die Uhrzeit.

Schritt 3) Wir werden unseren Wochentagsindexer auf unsere Wochentags-Arrayliste anwenden, um zu erfahren, welcher Tag heute ist.

  • Der Wochentagsoperator (wd) erhรคlt je nach aktuellem Wochentag eine Zahl von 0 bis 6. Hier wurde ein Array mit einer Liste der Wochentage (Montag, Dienstag, Mittwoch, Sonntag) deklariert.
  • Verwenden Sie diesen Indexwert, um zu wissen, welcher Tag heute ist. In unserem Fall ist es Nr. 2 und stellt den Mittwoch dar, sodass in der Ausgabe โ€žWelches ist ein Mittwochโ€œ ausgegeben wird.

Python Aktuelles Datum und Uhrzeit

Hier ist der vollstรคndige Code, um mit datetime now das aktuelle Datum und die aktuelle Uhrzeit abzurufen

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 Datums- und Uhrzeitausgabe mit Strftime()

Bisher haben wir gelernt, wie man datetime und date verwendet. Objekt in Python. Wir gehen einen Schritt weiter und lernen, wie Sie eine Formatierungsfunktion zum Formatieren von Uhrzeit und Datum verwenden.

Schritt 1) Zuerst sehen wir einen einfachen Schritt zur Formatierung des Jahres. Am besten lรคsst es sich anhand eines Beispiels verstehen.

Datums- und Uhrzeitausgabe mit Strftime() formatieren

  • Wir nutzten die โ€žstrftime-Funktionโ€œ zum Formatieren.
  • Diese Funktion verwendet verschiedene Steuercode eine Ausgabe geben.
  • Jeder Steuercode entspricht 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 so (โ€ž%Yโ€œ) was dem Jahr รคhnelt, gibt das ganze Jahr mit der Jahrhundertangabe aus (z. B. 2018).

Schritt 2) Wenn Sie nun (โ€ž%Yโ€œ) durch Kleinbuchstaben ersetzen, also (โ€ž%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 gezeigt angezeigt

Datums- und Uhrzeitausgabe mit Strftime() formatieren

Schritt 3) Die Funktion `strf` kann Datum, Tag, Monat und Jahr separat ausgeben. Mit kleinen ร„nderungen im Steuercode der Funktion `strftime` lรคsst sich auรŸerdem die Textformatierung anpassen.

Datums- und Uhrzeitausgabe mit Strftime() formatieren

Wenn Sie innerhalb der strftime-Funktion (%a) durch ein groรŸes A ersetzen, also (%A), wird die Ausgabe als โ€žFridayโ€œ anstatt nur der Abkรผrzung โ€žFriโ€œ ausgegeben.

Datums- und Uhrzeitausgabe mit Strftime() formatieren

Schritt 4) Mit Hilfe der Funktion โ€žStrftimeโ€œ kรถnnen wir auch die lokale Systemzeit, das Datum oder beides abrufen.

  1. %C- gibt das lokale Datum und die lokale Uhrzeit an
  2. %x- gibt das lokale Datum an
  3. %X- gibt die Ortszeit an

Datums- und Uhrzeitausgabe mit Strftime() formatieren

In der Ausgabe kรถnnen Sie das erwartete Ergebnis sehen

Schritt 5) Mit der โ€žstrftime-Funktionโ€œ kรถnnen Sie die Uhrzeit in jedem beliebigen Format (24 Stunden oder 12 Stunden) abrufen.

Datums- und Uhrzeitausgabe mit Strftime() formatieren

Durch einfaches Definieren von Steuercodes wie %I/H fรผr Stunde, %M fรผr Minute, %S fรผr Sekunde kann man die Zeit fรผr verschiedene Formate aufrufen

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 `timedelta` ist ein Objekt, das eine Dauer reprรคsentiert. Es wird hauptsรคchlich verwendet, um die Zeitspanne zwischen zwei Datums- und Zeitangaben zu berechnen. AuรŸerdem dient es dazu, das Objekt mit einem bestimmten Delta-Datum und einer Delta-Uhrzeit abzurufen. Das `timedelta`-Objekt unterstรผtzt mathematische Operationen wie Addition und Subtraktion.tracRechnungen, Multiplikation, Division usw.

So verwenden Sie Timedelta-Objekte

Mit Python Mit Timedelta-Objekten kรถnnen Sie die Zeit sowohl fรผr die Zukunft als auch fรผr die Vergangenheit schรคtzen. Mit anderen Worten handelt es sich um eine Zeitspanne zur Vorhersage eines bestimmten Tages, Datums oder einer bestimmten Uhrzeit.

Denken Sie daran, dass diese Funktion nicht dazu dient, die Uhrzeit oder das Datum auszudrucken, sondern etwas รผber die Zukunft oder Vergangenheit zu berechnenMal sehen, obโ€ฆ Python Timedelta-Beispiel, um es besser zu verstehen.

Schritt 1) Um Timedelta-Objekte auszufรผhren, mรผssen Sie zuerst die Importanweisung deklarieren und dann den Code ausfรผhren

  1. Schreiben Sie eine Importanweisung fรผr Timedelta
  2. Schreiben Sie nun den Code zum Ausdrucken des Objekts aus dem Zeitdelta, wie im Screenshot gezeigt
  3. Fรผhren Sie den Code aus. Das Zeitdelta stellt eine Zeitspanne von 365 Tagen, 8 Stunden und 15 Minuten dar und druckt das gleiche

Timedelta-Objekte

Verwirrend? Der nรคchste Schritt wird helfen-

Schritt 2) Lassen Sie uns das heutige Datum und die heutige Uhrzeit abrufen, um zu รผberprรผfen, ob unsere Importanweisung ordnungsgemรครŸ funktioniert. Wenn Code ausgefรผhrt wird, gibt er das heutige Datum aus, was bedeutet, dass unsere Importanweisung gut funktioniert

Timedelta-Objekte

Schritt 3) Wir werden sehen, wie wir รผber Delta-Objekte das Datum in einem Jahr abrufen kรถnnen. Wenn wir den Code ausfรผhren, wird die erwartete Ausgabe ausgegeben.

Timedelta-Objekte

Schritt 4) Ein weiteres Beispiel, wie Zeitdelta verwendet werden kann, um zukรผnftige Daten aus dem aktuellen Datum und der aktuellen Uhrzeit zu berechnen

Timedelta-Objekte

Schritt 5) Schauen wir uns ein komplexeres Beispiel an. Ich mรถchte bestimmen, wie viele Tage nach Neujahr. So gehen wir vor

  • Mit today= date.today() erhalten wir das heutige Datum
  • Wir wissen, dass das neue Jahr 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
  • Wenn das neue Jahr vor dem heutigen Datum liegt: Es wird geprรผft, ob das aktuelle Datum nach dem neuen Jahr liegt. Wenn ja, wird die while-Schleife ausgefรผhrt.
  • ((today-nyd).days) gibt die Differenz zwischen einem aktuellen Datum und dem neuen Jahr in DAYS an

Timedelta-Objekte

Die Ausgabe zeigt, dass โ€žNeujahr bereits 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

Die folgenden Beispiele zeigen die gleichen Datums- und Zeitoperationen, die fรผr Python 2, wobei print eine Anweisung und keine Funktion ist. Verwenden Sie diese Versionen nur zur Wartung รคlterer Systeme. Python 2 Code.

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)

Hรคufig gestellte Fragen

Verwenden Sie `datetime.strptime(text, format)`, um eine Zeichenkette in ein Datetime-Objekt umzuwandeln. รœbergeben Sie dieselben Anweisungen wie bei `strftime()`, sodass โ€ž2018-06-29โ€œ als โ€ž%Y-%m-%dโ€œ interpretiert wird. Im Gegensatz zu `strftime()` wandelt `strptime()` lesbaren Text wieder in ein Datums-/Zeitformat um, mit dem Sie rechnen kรถnnen.

Ein Datum/eine Uhrzeit ohne Zeitzoneninformation ist ungenau; durch die Angabe einer Zeitzone wird es entsprechend angepasst. Verwenden Sie das integrierte Modul zoneinfo (Python 3.9+) oder das pytz-Paket, um Datum und Uhrzeit zu lokalisieren und dann zwischen Zeitzonen umzurechnen, damit die Berechnungen regionsรผbergreifend korrekt bleiben.

Rufen Sie die Methode `timestamp()` eines Datums-/Uhrzeitobjekts auf, um die Sekunden seit der Unix-Epoche als Gleitkommazahl zu erhalten, beispielsweise `datetime.now().timestamp()`. Umgekehrt kann man mit `datetime.fromtimestamp(value)` ein Datums-/Uhrzeitobjekt aus einem Unix-Zeitstempel neu erstellen.

Beide Funktionen geben das aktuelle Datum und die aktuelle Uhrzeit zurรผck, aber `datetime.now()` akzeptiert optional ein Zeitzonenargument, wรคhrend `datetime.today()` dies nicht tut. Fรผr zeitzonenbewussten Code empfiehlt sich `datetime.now(tz)`, da das Ergebnis so den korrekten Offset enthรคlt und nicht ohne weitere Anpassungen auskommt.

Ja. Das Datums- und Uhrzeitmodul wird mitgeliefert. PythonDaher ist keine Installation per pip erforderlich. Importieren Sie es mit โ€žfrom datetime import datetime, date, time, timedeltaโ€œ, und die Klassen date, time, datetime, timedelta und tzinfo stehen sofort zur Verfรผgung.

Rufen Sie die Methode `isoformat()` auf, um eine Standardzeichenkette nach ISO 8601 wie โ€ž2018-06-29T08:15:27โ€œ zu erhalten. Fรผr ein Datumsobjekt gibt sie โ€žYYYY-MM-DDโ€œ zurรผck. Im Gegensatz zu `strftime()`, das benutzerdefinierte Formate mithilfe von Direktiven erstellt, benรถtigt `isoformat()` keine Steuerzeichen.

Maschinelles Lernen wandelt Rohdaten wie Zeitstempel mithilfe von Datum/Uhrzeit und Zeitdifferenz in Merkmale wie Wochentag, Stunde, Monat und verstrichene Zeit um. Diese aufbereiteten Datumsmerkmale helfen Zeitreihenmodellen und KI-Prognosesystemen, saisonale und zyklische Muster zu erkennen.

Ja. GitHub Copilot und agentenbasierte KI-Assistenten generieren aus einem kurzen Kommentar strftime()-Formatstrings, timedelta-Arithmetik und Zeitzonenkonvertierungen und kรถnnen kryptische Anweisungen erklรคren. Fรผhren Sie immer den vorgeschlagenen Code aus, da Datumsverarbeitung und Offsets leicht zu Fehlern fรผhren kรถnnen.

Fassen Sie diesen Beitrag mit folgenden Worten zusammen: