Python pytz时区的行为不一致
如果我构造一个Python日期,然后将其放置在Python pytz时区的行为不一致,python,datetime,Python,Datetime,如果我构造一个Python日期,然后将其放置在pytz时区,它的行为将与预期的一样 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时区
,它的行为将与预期的一样
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
文档中:
不幸的是,对于许多时区,使用标准datetime构造函数的tzinfo参数“不适用于”pytz
除非:
不过,对于没有夏令时转换的时区(如UTC),它是安全的
那不是你的情况
见:
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 >)