pytz时区的行为是不一致的

时间:2016-03-22 14:09:05

标签: python datetime

如果我构建一个Python日期,然后将其放在pytz timezone中,它就会按预期运行。

x = datetime.datetime(2015,1,1,10)
z = pytz.timezone('America/Chicago')
z.localize(x)
datetime.datetime(2015, 1, 1, 10, 0, tzinfo=< DstTzInfo 'America/Chicago' CST-1 day, 18:00:00 STD >)

如果我使用pytz timezone作为参数来构建Python日期,那么它(可能)是一个“太阳”时间,其中城市距离时区边界的偏移量。

datetime.datetime(2015,1,1,10,tzinfo=tz)
datetime.datetime(2015, 1, 1, 10, 0, tzinfo=< DstTzInfo 'America/Chicago' LMT-1 day, 18:09:00 STD >)

我可以对日期或时区本身做些什么,以便它在两种情况下的行为相同吗?

1 个答案:

答案 0 :(得分:0)

答案直接在pytz文档:

  
    

不幸的是,对于许多时区,使用标准日期时间构造函数的'tzinfo参数''与pytz不起作用。

  

除非:

  
    

对于没有夏令时转换的时区,例如UTC

,这是安全的   

哪不是你的情况

请参阅:http://pythonhosted.org/pytz/