Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich in Python überprüfen, ob zwischen zwei Datums- und Uhrzeitangaben 24 Stunden vergangen sind?

Wie kann ich in Python überprüfen, ob zwischen zwei Datums- und Uhrzeitangaben 24 Stunden vergangen sind?

Susan Sarandon
Susan SarandonOriginal
2024-12-06 06:53:12940Durchsuche

How Can I Check if 24 Hours Have Passed Between Two Datetimes in Python?

So ermitteln Sie, ob zwischen Datumsangaben in Python 24 Stunden vergangen sind

Bei der Entwicklung von Python-Anwendungen, die eine Zeiterfassung erfordern, ist es wichtig zu wissen, wie man den Unterschied zwischen zwei Datumsangaben vergleicht Datumsangaben. In diesem speziellen Szenario besteht das Ziel darin, festzustellen, ob seit einem bestimmten Datum/Uhrzeit 24 Stunden vergangen sind.

Um dies zu erreichen, können wir die folgenden Methoden nutzen:

Methode 1: Verwenden timedelta

Für UTC-Datetime-Objekte (ohne Zeitzoneninformationen) können Sie timedelta verwenden, um Vergleiche:

from datetime import datetime, timedelta

if (datetime.utcnow() - last_updated) > timedelta(hours=24): 
    # more than 24 hours passed

Methode 2: Verwenden von time.mktime()

Wenn last_updated ein naives Datetime-Objekt ist (ohne Zeitzoneninformationen), können Sie time verwenden. mktime() zum Vergleichen:

import time

DAY = 86400
now = time.time()
then = time.mktime(last_updated.timetuple())
if (now - then) > DAY:
    # more than 24 hours passed

Methode 3: Verwenden tzlocal

Für komplexere Zeitzonen sollten Sie erwägen, tzlocal zu verwenden, um die Datums-/Uhrzeitobjekte vor dem Vergleich zu normalisieren:

from datetime import datetime, timedelta
from tzlocal import get_localzone

tz = get_localzone() 
then = tz.normalize(tz.localize(last_updated)) 
now = datetime.now(tz)
if (now - then) > timedelta(hours=24):
    # more than 24 hours passed

Hinweis:

  • Für UTC-Datetime-Objekte verwenden Sie datetime.utcnow().
  • Für die Ortszeit datetime Objekte, verwenden Sie datetime.now().
  • time.mktime() funktioniert möglicherweise während der Umstellung auf Sommerzeit (DST) nicht korrekt.
  • tzlocal ist eine empfohlene Lösung für den Umgang mit Zeitzonen.

Durch die Implementierung dieser Methoden können Sie effektiv überprüfen, ob zwischen zwei Datumsangaben 24 Stunden vergangen sind, und so genaue zeitbasierte Berechnungen in Ihrem Python sicherstellen Programme.

Das obige ist der detaillierte Inhalt vonWie kann ich in Python überprüfen, ob zwischen zwei Datums- und Uhrzeitangaben 24 Stunden vergangen sind?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn