为什么是datetime.now()的tzinfo?

python: Why it tzinfo of datetime.now() none?

本问题已经有最佳答案,请猛点这里访问。

我的时区不是UTC。当我用datetime.now()得到日期时间时,我得到本地时间,但tzinfo字段的值为none

我在python2.7和python3.6.7中看到了相同的结果。

我希望得到时区信息或时间偏移值。为什么会这样?是否有方法根据ISO时间格式的需要获取时间偏移量?nbsp;


这是因为now将获取任何特定时区的当前时间,默认情况下,它将为您提供当前时区的日期时间对象(或您的计算机设置为)。

您可以通过将该时区传递给now函数来获取任何其他时区的当前时间。

1
2
3
4
5
6
7
8
9
In [1]: from datetime import datetime

In [2]: import pytz  # 3rd party: $ pip install pytz

In [4]: datetime.now()
Out[4]: datetime.datetime(2019, 2, 12, 20, 10, 2, 778532)

In [5]: datetime.now(pytz.utc)
Out[5]: datetime.datetime(2019, 2, 12, 14, 40, 4, 334078, tzinfo=<UTC>)