我正在阅读不太完整的pytz 文档,但我坚持理解其中的一部分。
时区之间的转换也需要特别注意。这也需要使用 normalize 方法来保证转换是正确的。
>>> utc_dt = utc.localize(datetime.utcfromtimestamp(1143408899))
>>> utc_dt.strftime(fmt)
'2006-03-26 21:34:59 UTC+0000'
>>> au_tz = timezone('Australia/Sydney')
>>> au_dt = au_tz.normalize(utc_dt.astimezone(au_tz))
>>> au_dt.strftime(fmt)
'2006-03-27 08:34:59 EST+1100'
>>> utc_dt2 = utc.normalize(au_dt.astimezone(utc))
>>> utc_dt2.strftime(fmt)
'2006-03-26 21:34:59 UTC+0000'
我在没有使用的情况下尝试了这个例子normalize
,结果是一样的。在我看来,这个例子并没有真正解释为什么我们必须在不同时区的对象normalize
之间转换datetime
时使用。
有人可以给我一个例子(如上面的例子),当不使用时结果会有所不同normalize
。
谢谢