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

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

Susan Sarandon
發布: 2024-12-06 06:53:12
原創
942 人瀏覽過

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

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

在開發需要時間追蹤的Python 應用程式時,了解如何比較兩個日期之間的差異至關重要日期時間。在此特定場景中,目標是確定自給定日期時間以來是否已過去 24 小時。

要實現此目的,我們可以利用以下方法:

方法1:使用timedelta

對於UTC 日期時間物件(沒有時區資訊) ,您可以使用timedelta比較:

from datetime import datetime, timedelta

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

方法2:使用time.mktime()

如果last_updated是一個簡單的日期時間物件(沒有時區資訊),你可以使用時間。 mktime() 比較:

import time

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

方法 3:使用tzlocal

對於更複雜的時區,請考慮在比較之前使用 tzlocal標準化日期時間對象:

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

注意:

  • 對於 UTC 日期時間對象,使用datetime.utcnow()。
  • 對於本地時間 datetime 對象,請使用 datetime.now()。
  • time.mktime() 在夏令時 (DST) 轉換期間可能無法正常運作。
  • tzlocal 是處理時區的建議解決方案。

透過實作這些方法,您可以有效地檢查兩個日期時間之間是否經過了 24 小時,確保 Python 程式中基於時間的計算準確。

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

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