【发布时间】:2021-09-09 01:59:15
【问题描述】:
我正在尝试在 Python 中转换两个时区的时间,但遇到以下问题。
代码
import pytz
import datetime
chicago_timezone = pytz.timezone("America/Chicago")
polish_time_zone = pytz.timezone("Europe/Warsaw")
chicago_time = datetime.datetime(2020,6,25,8,0,0,0,chicago_timezone)
print(chicago_time)
polish_time = chicago_time.astimezone(polish_time_zone)
print(polish_time)
输出
2020-06-25 08:00:00-05:51
2020-06-25 15:51:00+02:00
虽然正确的抛光时间应为 2020-06-25 15:00:00(时差为 7 小时)。 有人可以指导我吗?这让我有点困惑,我不明白为什么它没有按预期工作。
【问题讨论】:
-
你使用
pytz不正确,你需要使用他们的localize函数。 -
感谢您快速而全面的回答!
-
你不是第一个遇到这个问题的人。我认为
datetime的设计者希望tzinfo对象比实际使用时更加静态。