【发布时间】:2012-05-01 02:53:14
【问题描述】:
使用:
time.mktime(datetime.datetime.now(pytz.timezone("UTC")).timetuple())
2012 年 4 月 19 日纽约 10:00 后不久的时间戳为 1334840917。鉴于此时间戳,我如何将其转换回考虑夏令时的日期时间对象?
如果我这样做:
>>>eastern = pytz.timezone("Us/Eastern")
>>>dt = datetime.datetime.fromtimestamp(1334840917,eastern)
>>>dt.hour
输出为:9
【问题讨论】:
-
您的时间戳是本地时间而不是 UTC 是否有原因?
-
时间戳是 UTC,这不是什么:time.mktime(datetime.datetime.now(pytz.timezone("UTC")).timetuple()) 吗?
-
是的,你是对的。我一直在使用
calendar.timegm(datetime.datetime.utcnow().utctimetuple()),应该是一样的。