根据timeanddate.com,目前芝加哥比UTC晚了5个小时。但是,我的Python应用程序有不同的看法:
import datetime
import pytz
local_tz = pytz.timezone('America/Chicago')
local_time = datetime.datetime(2015, 8, 6, 0, 0, tzinfo=local_tz)
utc_time = local_time.astimezone(pytz.utc)
print(local_time)
print(utc_time)
2015-08-06 00:00:00-05:51
2015-08-06 05:51:00+00:00
我与'America / Chicago'和'US / Central'的结果相同。为什么偏移-05:51而不是-05:00?
答案 0 :(得分:3)
#!/usr/bin/python
个时区对象需要在使用前的特定时间进行初始化,并且创建带pytz
参数的datetime
不允许这样做。您必须使用tzinfo=
对象的localize
方法将时区添加到pytz
。
datetime