Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial programming >> Python

Pythons datetime-Modul meistern: Dates, Times, Timedelta & Strftime erklärt

Pythons datetime-Bibliothek bietet ein robustes Toolset für die Manipulation von Daten, Zeiten und Zeitintervallen. Durch die Arbeit mit Objekten statt rohen Strings oder Timestamps können Entwickler präzise Berechnungen und Formatierungen mit Vertrauen durchführen.

Wichtige datetime-Klassen

Einstieg: Importieren und Instanziieren

Vor jeder Manipulation die nötigen Klassen importieren:

from datetime import date, time, datetime, timedelta

Ein date-Objekt instanziieren:

today = date.today()
print(today)  # z. B. 2024-04-19

Aktuelles Datum und Uhrzeit

datetime.now()-Methode gibt das aktuelle lokale Datum und die Zeit zurück:

now = datetime.now()
print(now)  # 2024-04-19 14:35:12.123456

Um nur die Zeitkomponente zu extrahieren:

current_time = now.time()
print(current_time)  # 14:35:12.123456

Output formatieren mit strftime

Die strftime-Methode konvertiert datetime-Objekte in menschenlesbare Strings mittels Format-Codes:

now.strftime("%Y-%m-%d %H:%M:%S")  # "2024-04-19 14:35:12"

Gängige Direktiven:

  • %Y – Vierstelliges Jahr.
  • %y – Zweistelliges Jahr.
  • %a – Abgekürzter Wochentagname.
  • %A – Voller Wochentagname.
  • %b – Abgekürzter Monatsname.
  • %B – Voller Monatsname.
  • %d – Tag des Monats (01‑31).
  • %H – Stunde (00‑23).
  • %I – Stunde (01‑12).
  • %M – Minute (00‑59).
  • %S – Sekunde (00‑59).
  • %p – AM oder PM.

Beispiele:

# 12-Stunden-Format mit AM/PM
print(now.strftime("%I:%M:%S %p"))
# 24-Stunden-Format
print(now.strftime("%H:%M"))

Mit timedelta arbeiten

Ein timedelta repräsentiert einen Zeitspanne. Er unterstützt Arithmetik mit Daten und Datetimes:

# Timedelta von 365 Tagen erstellen
one_year = timedelta(days=365)
# Ein Jahr ab heute
future_date = datetime.now() + one_year
print(future_date)

Tage bis zu einem Event berechnen (z. B. Neujahr):

today = date.today()
new_year = date(today.year, 1, 1)
if new_year < today:
    new_year = date(today.year + 1, 1, 1)
print("New Year is in", (new_year - today).days, "days")
else:
    print("New Year is in", (new_year - today).days, "days")

Alles zusammen

Unten ein prägnantes, lauffähiges Skript, das die Kernfeatures demonstriert:

from datetime import datetime, date, timedelta

# Aktuelles Datum und Zeit
now = datetime.now()
print("Now:", now)

# Format-Beispiele
print("ISO format:", now.strftime("%Y-%m-%d %H:%M:%S"))
print("12-Stunden Zeit:", now.strftime("%I:%M:%S %p"))

# Timedelta Operationen
one_week = timedelta(weeks=1)
print("One week from now:", now + one_week)

# Tage bis Neujahr
today = date.today()
new_year = date(today.year + (today < date(today.year, 1, 1)), 1, 1)
print("Days until New Year:", (new_year - today).days)

Zusammenfassung

Pythons datetime-Modul rüstet Entwickler mit mächtigen, typsicheren Tools für Datums- und Zeitmanipulation aus:

  • date, time und datetime Objekte für klare, explizite Repräsentationen nutzen.
  • strftime für flexibles, locale-bewusstes Formatieren einsetzen.
  • timedelta für Arithmetik und Intervallberechnungen verwenden.
  • Relevante Klassen vor Gebrauch importieren; sonst wirft der Interpreter Fehler.

Diese Tools sind essenziell für Aufgaben von einfachem Timestamping bis zu komplexer Scheduling-Logik.

Python

  1. Python datetime meistern: Praktischer Leitfaden zu Datumsangaben, Zeiten und Zeitzonen
  2. Aktuelles Datum und Uhrzeit in Python abrufen: Praktischer Leitfaden
  3. Python: Aktuelle Uhrzeit und Zeitzonendaten einfach abrufen
  4. Pythons time-Modul meistern: Funktionen, Structs und praktische Beispiele
  5. Pythons time.sleep() meistern: Best Practices, Multithreading und Praxisbeispiele
  6. Python print()-Funktion: Praktischer Leitfaden mit Beispielen
  7. Pythons str.count(): Zeichen & Teilstrings zählen mit Beispielen
  8. Python format()-Strings meistern mit klaren Beispielen
  9. Pythons String.find()-Methode meistern: Syntax, Beispiele & Alternativen
  10. Python Lambda-Funktionen meistern: Praxisbeispiele & Best Practices