在 Python 中检查当前时间是否小于特定时间



在Python脚本中,我希望它在执行之前检查它是否在UTC上午9点之前,以便它可以做一些特定的事情。

我想知道最好的方法是检查时间以确保每天运行脚本在上午 9 点之前?请记住,代码可以在具有不同时区的不同计算机上运行。

谢谢

datetime模块应该对您非常有帮助。 尝试如下操作:

>>> d = datetime.datetime.utcnow()
>>> print d
2015-06-17 11:39:48.585000
>>> d.hour
11
>>> if d.hour < 9:
        print "Run your code here"
# nothing happens, it's after 9:00 here.
>>> 

你试过这个吗

在所有计算机中,将时间转换为UTC,然后将其与要开始的时间进行比较

from datetime import datetime
now_UTC = datetime.utcnow() # Get the UTC time
# check for the condition
if(now_UTC.hour < 9):
    do something()

通过在线阅读,我想出了这个答案,我看起来不是最有效的,但似乎可以完成这项工作:

import datetime
import pytz
utc = pytz.utc
loc_dt = utc.localize(datetime.datetime.today().replace(hour=9, minute=0))
today = utc.localize(datetime.datetime.today())
if loc_dt < today:
    print("Go")

要获取 UTC 格式的当前小时数,请执行以下操作:

>>> import time
>>> time.gmtime().tm_hour
15

相关内容

  • 没有找到相关文章

最新更新