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

Wie kann ich in Python überprüfen, ob zwischen zwei Datumsangaben 24 Stunden vergangen sind?

Linda Hamilton
Linda HamiltonOriginal
2024-12-02 15:16:12693Durchsuche

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

So ermitteln Sie in Python, ob zwischen Datums- und Uhrzeitangaben 24 Stunden vergangen sind

Bestimmen, ob zwischen zwei Datums- und Uhrzeitangaben 24 Stunden vergangen sind, ist eine häufige Aufgabe in Programmierung. Die bereitgestellte Methode time_diff berechnet den Zeitunterschied zwischen der letzten Ausführungszeit (last_updated) und einem Tageszeitraum 24 Stunden später. Um jedoch festzustellen, ob konkret 24 Stunden vergangen sind, sind weitere Schritte erforderlich. Hier ein paar Ansätze:

1. Naiver Datetime-Vergleich (UTC)

Wenn last_updated eine naive Datetime (ohne Zeitzoneninformationen) in UTC darstellt, können Sie das Datetime-Modul verwenden:

from datetime import datetime, timedelta

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

2. Naiver Datetime-Vergleich (Lokalzeit)

Wenn last_updated die Ortszeit darstellt, können Sie das Zeitmodul verwenden:

import time

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

3. Aware Datetime-Vergleich (zeitzonenbewusst)

Wenn „last_updated“ ein datetime-bezogenes Datum ist, das die Zeitzone berücksichtigt, können Sie es in UTC konvertieren und mit der aktuellen UTC-Zeit vergleichen:

from datetime import datetime, timedelta

last_updated_utc = last_updated.replace(tzinfo=None) - last_updated.utcoffset()
if (datetime.utcnow() - last_updated_utc) > timedelta(hours=24):
    # More than 24 hours have passed

4. Verwenden des tzlocal-Moduls

Das tzlocal-Modul kann verwendet werden, um Zeitzonenkonvertierungen für naive Datumsangaben durchzuführen:

from datetime import datetime, timedelta
from tzlocal import get_localzone

local_timezone = get_localzone()
last_updated_aware = local_timezone.localize(last_updated)
if (datetime.now(local_timezone) - last_updated_aware) > timedelta(hours=24):
    # More than 24 hours have passed

Das obige ist der detaillierte Inhalt vonWie kann ich in Python überprüfen, ob zwischen zwei Datumsangaben 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
Vorheriger Artikel:Automatisierungen mit Python.Nächster Artikel:Automatisierungen mit Python.