首页 > 后端开发 > Python教程 > 自 Python 中给定日期时间以来已经过去 24 小时了吗?

自 Python 中给定日期时间以来已经过去 24 小时了吗?

Barbara Streisand
发布: 2024-12-10 09:12:12
原创
947 人浏览过

Has 24 Hours Passed Since a Given DateTime in Python?

如何确定 Python 中的日期时间之间是否已过去 24 小时

问题描述

假设您有一个名为 last_updated 的日期时间对象,表示上次更新时间执行了一个特定的程序。要确定自那时起是否已经过去了整整 24 小时,请按照以下步骤操作:

解决方案

  1. 获取当前时间:
import datetime

now = datetime.datetime.now()
登录后复制
  1. 计算时间差异:
time_difference = now - last_updated
登录后复制
  1. 转换为小时:
hours = time_difference.total_seconds() / 3600
登录后复制
  1. 检查条件:
if hours >= 24:
    # 24 hours or more have passed
登录后复制
  1. 其他注意事项:

取决于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中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板