python: 为啥 datetime.now() 的 tzinfo 没有? [复制]
Posted
技术标签:
【中文标题】python: 为啥 datetime.now() 的 tzinfo 没有? [复制]【英文标题】:python: Why it tzinfo of datetime.now() none? [duplicate]python: 为什么 datetime.now() 的 tzinfo 没有? [复制] 【发布时间】:2019-07-06 05:38:56 【问题描述】:我的时区不是 UTC。当我使用 datetime.now()
获取日期时间时,我得到的是当地时间,但 tzinfo
字段的值是 none
。
我在 python 2.7 和 python 3.6.7 中看到了相同的结果。
我希望获得时区信息或时间偏移值。这是为什么 ?有没有办法根据 ISO 时间格式的需要获取时间偏移?
【问题讨论】:
【参考方案1】:这是因为now
将获取任何特定时区的当前时间,默认情况下它会为您提供您所在的当前时区的日期时间对象(或您的计算机设置为)。
您可以通过将该时区传递给now
函数来获取任何其他时区的当前时间。
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>)
【讨论】:
以上是关于python: 为啥 datetime.now() 的 tzinfo 没有? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
DateTime.UtcNow.ToString() 和DateTime.Now.ToString()输出的字符为啥不一样呢?