美国/山区和AZ时区的区别是什么?为什么它要增加一个额外的28分钟
>>> strtime = datetime.datetime.strptime('10:00pm', '%I:%M%p')
>>> tz = timezone('US/Mountain').localize(strtime)
>>> print tz
1900-01-01 22:00:00-07:00
>>> tz = timezone(us.states.lookup('AZ').capital_tz).localize(strtime)
>>> print tz
1900-01-01 22:00:00-07:28 <<-----发布于 2020-06-11 06:56:19
这很可能是因为您的年份是1900年(也请参阅this问题);如果添加当前年份,它会运行得很好:
import datetime
from pytz import timezone
import us
strtime = datetime.datetime.strptime('2020 10:00pm', '%Y %I:%M%p')
tz = timezone('US/Mountain').localize(strtime)
print(tz)
# 2020-01-01 22:00:00-07:00
tz = timezone(us.states.lookup('AZ').capital_tz).localize(strtime)
print(tz)
# 2020-01-01 22:00:00-07:00(我正在使用Python3,但这并没有什么区别,1900年我得到了同样的28分钟补偿)
https://stackoverflow.com/questions/62316300
复制相似问题