【发布时间】:2017-12-27 18:33:17
【问题描述】:
将时区原始日期时间转换为特定时区会产生完全错误的结果。
import dateutil as du
import pytz
du.parser.parse('2017-05-31T15:00:00').replace(tzinfo=pytz.timezone('Europe/London')).isoformat()
返回一分钟而不是一小时与 UTC 的偏移量
'2017-05-31T15:00:00-00:01'
我以前见过一些日期时间的特殊性,但这个令人叹为观止。
【问题讨论】:
-
不太清楚为什么这需要立即投反对票而不发表评论。
-
什么是 dateutil(第三方库,不在标准库中,如 datetime)?
parse之后的结果是什么? -
这是一个相当知名的package。 Parse 生成一个标准的日期时间对象。
-
您可以将
parse的输出添加到问题中吗?看看问题出在哪里会很有帮助。 -
要么使用符合 tzinfo 的时区接口,例如
dateutil.tz,要么使用pytz.timezone("Europe/London").localize(my_datetime)。
标签: python datetime timezone pytz python-dateutil