python - 现在获得 UTC 的非天真(感知)日期时间的最简单方法?

标签 python datetime timezone utc

我震惊地发现 datetime.utcnow() 返回了一个简单的日期时间对象。获得“现在”的非天真(感知)日期时间对象的最简单方法是什么?我知道的唯一方法 (pytz.utc.localize(datetime.utcnow())) 似乎两次声明 UTC 方面。有没有更直接的方法?

我知道这不是一段非常复杂的代码,因此可以接受。但我想了解为什么 utcnow() 首先不返回感知对象。毕竟结果的TZ是已知的,为什么不把它放在对象中呢?

最佳答案

documentation建议使用 datetime.now(timezone.utc)

例如

import datetime

print(datetime.datetime.utcnow())
# 2019-09-05 08:10:29.909459
print(datetime.datetime.now(datetime.timezone.utc))
# 2019-09-05 08:10:29.910137+00:00

关于python - 现在获得 UTC 的非天真(感知)日期时间的最简单方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57800757/

相关文章:

python - 使用 asyncio 使 websocket 回调异步

python - Keras:功能性 API 嵌入层的输入层应该是什么?

python - 如何在 Flask 中运行 localhost

python - 如何在Python中使用SQLalchemy过滤SQL表中的日期时间列?

python - 是什么改变了这个 pandas 代码中的日期类型?

java - 从数据库获取 GMT 时间后更改时区 - MonetDB

python - Tornado websocket 处理程序,self.close() 正在关闭连接而不触发 on_close() 方法

c#-4.0 - 如何在 OpenXML 电子表格中区分内联数字和 OLE 自动化日期数字?

javascript - 如何从 javascript Intl.DateTimeFormat 获取时区缩写

c# - 为确切的日光日期获取错误的 UTC 偏移时间