Grundlagen des datetime-Moduls in Python
Die Arbeit mit Datum und Zeit gehört zu den wichtigsten Aufgaben in der Programmierung. In Python kommt dafür das leistungsstarke und flexible Modul datetime zum Einsatz. Es ermöglicht eine komfortable Verwaltung von Daten, Zeiten, Zeitintervallen und Formatierungen.
Falls du dich jemals gefragt hast, wie man das heutige Datum in Python erhält, die Differenz zwischen zwei Daten berechnet oder einen String in ein Datum umwandelt – dieser Artikel liefert dir umfassende Antworten mit fertigen Codebeispielen.
Was ist das datetime-Modul?
Das datetime-Modul ist Teil der Python-Standardbibliothek. Es stellt Klassen zur Verwaltung von Zeit und Datum bereit. Da es integriert ist, ist keine zusätzliche Installation erforderlich.
Mit dem datetime-Modul kannst du:
- Aktuelles Datum und aktuelle Uhrzeit abrufen
- Arithmetische Operationen mit Daten durchführen
- Daten formatieren und umwandeln
- Mit Zeitintervallen über die Klasse timedelta arbeiten
- Zeitzonen verwalten
Das Modul wird auf die übliche Weise importiert:
import datetime
Aktuelles Datum und aktuelle Uhrzeit abrufen
Das heutige Datum ermitteln
Das Abrufen des aktuellen Datums gehört zu den häufigsten Aufgaben. Dafür wird die Methode today() der Klasse date verwendet:
from datetime import date
today = date.today()
print(f"Heutiges Datum: {today}")
Die Ausgabe erfolgt im Format JJJJ-MM-TT, z. B.: 2025-05-09.
Aktuelle Uhrzeit und Datum gleichzeitig abrufen
Wenn sowohl Datum als auch Uhrzeit benötigt werden, verwendest du die Klasse datetime und die Methode now():
from datetime import datetime
now = datetime.now()
print(f"Aktuelles Datum und Uhrzeit: {now}")
Einzelne Komponenten von Datum und Uhrzeit extrahieren
Das datetime-Modul ermöglicht das einfache Extrahieren einzelner Komponenten:
current_time = datetime.now()
print(f"Jahr: {current_time.year}")
print(f"Monat: {current_time.month}")
print(f"Tag: {current_time.day}")
print(f"Stunden: {current_time.hour}")
print(f"Minuten: {current_time.minute}")
print(f"Sekunden: {current_time.second}")
Datum und Uhrzeit formatieren
Grundlagen der Formatierung
Oft muss ein Datum in einer lesbaren Form dargestellt werden. Dafür wird die Methode strftime() verwendet, mit der du das gewünschte Ausgabeformat festlegen kannst:
now = datetime.now()
formatted = now.strftime("%d.%m.%Y %H:%M:%S")
print(f"Formatiertes Datum und Uhrzeit: {formatted}")
Wichtige Formatierungscodes
Das datetime-Modul unterstützt zahlreiche Formatierungscodes:
- %Y — Jahr (4-stellig), z. B.: 2025
- %m — Monat (mit führender Null), z. B.: 05
- %d — Tag des Monats, z. B.: 09
- %H — Stunden (24-Stunden-Format), z. B.: 14
- %M — Minuten, z. B.: 30
- %S — Sekunden, z. B.: 45
- %A — Vollständiger Wochentagsname, z. B.: Freitag
- %B — Vollständiger Monatsname, z. B.: Mai
String in Datum umwandeln
Wenn du ein Datum als String hast und es in ein datetime-Objekt umwandeln möchtest, verwendest du die Methode strptime():
from datetime import datetime
date_string = "09.05.2025"
converted_date = datetime.strptime(date_string, "%d.%m.%Y")
print(f"Datum nach der Umwandlung: {converted_date}")
Arithmetische Operationen mit Daten
Differenz zwischen Daten berechnen
Das datetime-Modul ermöglicht die einfache Berechnung der Anzahl Tage zwischen zwei Daten. Das Ergebnis wird als timedelta-Objekt dargestellt:
from datetime import date
date1 = date(2025,