作者: | 来源:互联网 | 2023-09-24 18:16
在标准库中,没有跨平台的方法来创建感知时区而不创建自己的时区类。
在Windows上有win32timezone.utcnow()
,但这是pywin32的一部分。我宁愿建议使用pytz库,该库具有大多数时区的不断更新的数据库。
使用本地时区可能非常棘手(请参见下面的“更多阅读”链接),因此您可能希望在整个应用程序中使用UTC,尤其是对于算术运算(如计算两个时间点之间的时差)。
您可以像这样获取当前日期/时间:
import pytz
from datetime import datetime
datetime.utcnow().replace(tzinfo=pytz.utc)
记住这一点datetime.today()
并datetime.now()
返回 本地
时间,而不是UTC时间,因此.replace(tzinfo=pytz.utc)
向他们申请将是不正确的。
另一个不错的方法是:
datetime.now(pytz.utc)
有点短,并且做的一样。