Python Datetime: Arbeiten mit Datums- und Uhrzeitangaben
Erfahren Sie, wie Sie in Python mit Datumsangaben, Uhrzeiten, Zeitzonen und Berechnungen umgehen. Master-Formatierung, Parsing und Arithmetik mit Datetime und Timedelta.
Übersicht
Der Umgang mit Datums- und Uhrzeitangaben ist aufgrund von Schaltjahren, Sommerzeitumstellungen und unterschiedlichen Zeitzonenformaten eine bekannte Herausforderung in der Softwareentwicklung. Python löst diese Herausforderungen mit seinem integrierten „datetime“-Modul. Dieses Modul bietet einen robusten Satz von Objektklassen – wie „Datum“, „Uhrzeit“, „DatumUhrzeit“ und „Zeitzone“ – die zeitliche Daten sauber darstellen und manipulieren und so Datumsberechnungen unkompliziert machen.
Eine der häufigsten Aufgaben ist die Konvertierung von Datumsangaben in Zeichenfolgen (Formatierung) und von Zeichenfolgen in Datumsangaben (Analyse). Python verwendet hierfür zwei Hauptmethoden: „.strftime()“ (String-Format-Zeit) konvertiert ein Datetime-Objekt mithilfe von Formatierungscodes (wie „%Y“ für Jahr, „%m“ für Monat und „%d“ für Tag) in einen lesbaren String. Umgekehrt analysiert „datetime.strptime()“ (String-Parse-Zeit) eine rohe String-Eingabe in ein Datetime-Objekt basierend auf einer passenden Formatvorlage, was beim Lesen von Protokollen oder API-Eingaben von entscheidender Bedeutung ist.
Auch die Durchführung von Datumsberechnungen wird mit dem Objekt „timedelta“ vollständig unterstützt. Ein „Zeitdelta“ stellt eine Zeitdauer dar (z. B. 7 Tage, 4 Stunden). Sie können ein „timedelta“ von einem „datetime“ addieren oder davon subtrahieren, um vergangene oder zukünftige Daten zu berechnen (z. B. um ein Ablaufdatum zu bestimmen). Wenn Sie mit mehreren Zeitzonen arbeiten, ist die Verwendung von Objekten, die Zeitzonen berücksichtigen (z. B. „zoneinfo“ oder „timezone.utc“), von entscheidender Bedeutung, um sicherzustellen, dass Datumsvergleiche über verschiedene Serverstandorte hinweg korrekt bleiben.
Code- und Ausführungsausgabe
Parsen von Zeichenfolgen in Datetime-Objekte und Berechnen zukünftiger Fristen mithilfe von Timedelta.
from datetime import datetime, timedelta
# Define a specific fixed base date and time (for deterministic runs)
base_date = datetime(2026, 5, 25, 23, 45, 50)
print(f"Base Date/Time: {base_date}")
# Format datetime as string
formatted = base_date.strftime("%Y-%m-%d %H:%M:%S")
print(f"Formatted String: {formatted}")
# Parse string to datetime
date_str = "2026-12-25"
parsed_date = datetime.strptime(date_str, "%Y-%m-%d")
print(f"Parsed Date: {parsed_date}")
# Date arithmetic with timedelta
ten_days_later = base_date + timedelta(days=10)
print(f"Date 10 days later: {ten_days_later.strftime('%Y-%m-%d')}")Base Date/Time: 2026-05-25 23:45:50
Formatted String: 2026-05-25 23:45:50
Parsed Date: 2026-12-25 00:00:00
Date 10 days later: 2026-06-04Schrittweise Umsetzung
- Berechnen des Testablaufs und der Abrechnungstermine
- Analysieren von Zeitstempelzeichenfolgen in Serverzugriffsprotokollen
- Planen Sie automatisierte Cron-Jobs oder wiederkehrende Berichte
Häufig gestellte Fragen
Was ist ein naives vs. bewusstes Datetime-Objekt?
Ein naives Datetime-Objekt enthält keine Zeitzoneninformationen, wohingegen ein bewusstes Datetime-Objekt Zeitzonenoffsets enthält, was es für internationale Zeitberechnungen sicher macht.
Wie berechne ich die Differenz zwischen zwei Daten?
Das Subtrahieren eines Datetime-Objekts von einem anderen gibt ein Timedelta-Objekt zurück, das die genaue Dauer zwischen ihnen darstellt.
Verwandte Themen
Entdecken Sie die Leistungsfähigkeit des integrierten Mathematikmoduls von Python. Erfahren Sie mehr über trigonometrische Funktionen, Logarithmen, Rundungsmethoden und Konstanten.
Python-JSON-ParsingErfahren Sie, wie Sie JSON-Daten in Python lesen, schreiben und analysieren. Beherrschen Sie json.loads, json.dumps und passen Sie JSON-Encoder/Decoder an.
Empfohlene Python-Ressourcen
Erweitern Sie Ihr Wissen mit zugehörigen interaktiven Tutorials, Spickzetteln und Codevergleichen.
So analysieren Sie einen String in eine Datums- und Uhrzeitangabe in Python
Erfahren Sie, wie Sie in Python Zeichenfolgen in Datetime-Objekte konvertieren. Beherrschen Sie die strptime-Methode, analysieren Sie Datumszeichenfolgen, verarbeiten Sie Zeitzonen und verhindern Sie Formatfehler.
Python DateTime-Formatierungs-Spickzettel
Erfahren Sie, wie Sie Datums- und Uhrzeitangaben in Python mithilfe von datetime, strftime und strptime analysieren und formatieren.
Python vs. JavaScript: Welche Programmiersprache ist die beste?
Ein umfassender Vergleich zwischen Python und JavaScript. Entdecken Sie Syntaxunterschiede, Leistung, Anwendungsfälle (Backend vs. Frontend) und Codierungsbeispiele.