Python 时间戳转换关闭一小时

Python 时间戳转换关闭一小时,python,django,datetime,time,Python,Django,Datetime,Time,我试图在django中解析twitter提要,但在转换发布时间时遇到了一个奇怪的问题: 我已经正确地将时间从提要转换为完整的9元组: >> print tweet_time time.struct_time(tm_year=2009, tm_mon=6, tm_mday=17, tm_hour=14, tm_min=35, tm_sec=28, tm_wday=2, tm_yday=168, tm_isdst=0) 但当我称之为: tweet_time = datetime.fro

我试图在django中解析twitter提要,但在转换发布时间时遇到了一个奇怪的问题:

我已经正确地将时间从提要转换为完整的9元组:

>> print tweet_time
time.struct_time(tm_year=2009, tm_mon=6, tm_mday=17, tm_hour=14, tm_min=35, tm_sec=28, tm_wday=2, tm_yday=168, tm_isdst=0)
但当我称之为:

tweet_time = datetime.fromtimestamp(time.mktime(tweet_time))
最后,我提前一个小时到达一个时间点:

>> print tweet_time
2009-06-17 15:35:28

我在这里遗漏了什么?

尝试将isdst(即夏令时标志)翻转到-1,看看是否可以修复它-1告诉它使用(猜测)本地夏令时设置,并使用该设置

你的建议是对的,尽管一些关于如何做的提示会有所帮助。工作代码是这样的:tweet_time=datetime.fromtimestamp(time.mktime(tweet_time[0:8]+-1,))所有这些都是错误的DST标志的麻烦。Grr。这提醒您应该在内部使用UTC,并将其转换为仅用于输出的本地时间(如显示)。派茨来营救。@zgoda希望看到一个清晰的例子来说明如何做到这一点。