Python - 在UTC中获取时区感知当前时间的最简单和最连贯的方法?

2022-01-16 00:00:00 python datetime timezone

问题描述

datetime.now() 似乎没有附加时区信息.我想要UTC的当前时间.我该怎么办?

datetime.now() doesn't appear to have timezone info attached. I want the current time in UTC. What do I do?

>>> from datetime import datetime
>>> y = datetime.now()
>>> y
datetime.datetime(2014, 3, 11, 11, 18, 33, 598489)

起初我认为 datetime.utcnow() 是显而易见的解决方案,但后来我发现它也没有附加时区信息(WTF?).

At first I thought datetime.utcnow() was the obvious solution, but then I discovered that it doesn't have timezone info attached either (WTF?).

>>> from datetime import datetime
>>> y = datetime.utcnow()
>>> y
datetime.datetime(2014, 3, 11, 16, 19, 40, 238810)


解决方案

我用 pytz

然后使用以下代码

import pytz
from datetime import datetime
now = datetime.utcnow().replace(tzinfo = pytz.utc)

相关文章