假设您有一个名为 last_updated 的日期时间对象,表示上次更新时间执行了一个特定的程序。要确定自那时起是否已经过去了整整 24 小时,请按照以下步骤操作:
import datetime now = datetime.datetime.now()
time_difference = now - last_updated
hours = time_difference.total_seconds() / 3600
if hours >= 24: # 24 hours or more have passed
取决于last_updated是否是天真的(时区不知道)或时区感知的日期时间对象,您可能需要相应地调整时差计算。有关更多详细信息,请参阅 Python 文档。
例如,如果 last_updated 是 naive 且表示 UTC 时间,则可以使用以下代码:
from datetime import datetime, timedelta if (datetime.utcnow() - last_updated) > timedelta(hours=24): # 24 hours or more have passed in UTC
如果 last_updated 是 naive 且表示本地时间时间,您可以使用以下代码:
import time DAY = 86400 now = time.time() then = time.mktime(last_updated.timetuple()) if (now - then) > DAY: # 24 hours or more have passed in local time
对于时区感知的日期时间对象,建议转换在执行时差计算之前将其转换为 UTC。
以上是自 Python 中给定日期时间以来已经过去 24 小时了吗?的详细内容。更多信息请关注PHP中文网其他相关文章!