首頁 > 後端開發 > Python教學 > 如何在 Python 中檢查兩個日期時間之間是否已經過去 24 小時?

如何在 Python 中檢查兩個日期時間之間是否已經過去 24 小時?

Linda Hamilton
發布: 2024-12-02 15:16:12
原創
638 人瀏覽過

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

如何確定Python 中的日期時間之間是否已過去24 小時

確定兩個日期時間之間是否已過去24 小時是一個常見任務程式設計。提供的方法 time_diff 計算上次執行時間 (last_updated) 與 24 小時後的一天時間之間的時間差。然而,要確定是否已經過了 24 小時,需要採取進一步措施。以下是一些方法:

1.樸素日期時間比較(UTC)

如果last_updated表示UTC中的樸素日期時間(沒有時區資訊),您可以使用日期時間模組:

from datetime import datetime, timedelta

if (datetime.utcnow() - last_updated) > timedelta(hours=24):
    # More than 24 hours have passed
登入後複製

2。 Naive Datetime Comparison (Local Time)

如果last_updated代表當地時間,你可以使用time模組:

import time

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

3.感知日期時間比較(時區感知)

如果last_updated是時區感知日期時間,您可以將其轉換為UTC並與當前UTC時間進行比較:

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.使用 tzlocal 模組

tzlocal 模組可用於處理原始日期時間的時區轉換:

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
登入後複製

以上是如何在 Python 中檢查兩個日期時間之間是否已經過去 24 小時?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板