Python Datetime:使用strftime()与时区感知日期

6 浏览
0 Comments

Python Datetime:使用strftime()与时区感知日期

假设我有一个日期 d,如下所示:

>>> d
datetime(2009, 4, 19, 21, 12, tzinfo=tzoffset(None, -7200))

正如你所看到的,它是“带时区信息的”,偏移量为2小时,协调世界时为

>>> d.utctimetuple()
time.struct_time(tm_year=2009, tm_mon=4, tm_mday=19,
                 tm_hour=23, tm_min=12, tm_sec=0,
                 tm_wday=6, tm_yday=109, tm_isdst=0)

所以,真正的UTC日期是2009年3月19日23:12:00,对吗?

现在我需要将日期格式化为字符串,我使用

>>> d.strftime('%Y-%m-%d %H:%M:%S.%f')
'2009-04-19 21:12:00.000000'

但是它似乎没有考虑到这个偏移量。如何修复这个问题?

0