從http://docs.python.org/library/time.html:如何在Python中將日期時間轉換爲UTC時間戳?
time.mktime(T): 這是本地時間的逆函數()。它的參數是 struct_time或完整的9元組(因爲需要 dst標誌;如果它是未知的,使用-1作爲dst 標誌),它表示本地時間而不是UTC的 時間。它 返回一個浮點數,爲 與time()的兼容性。如果 輸入值不能被表示爲 有效時間,無論是OverflowError或 ValueError異常將升高(這 取決於是否無效值 由Python或底層 C庫捕獲)。 它可以生成一個時間的最早日期是 平臺相關。
這說你需要在本地時間,而不是UTC指定你的時間元組。但是,我想用UTC來指定;我不想在箱子上使用當地時區。
有沒有什麼辦法可以讓我從日期時間到時間戳,時間被視爲UTC?當我轉換爲時間戳和從時間戳轉換時,我希望能夠將所有內容保存爲標準化的UTC格式(日期時間對象)。
我希望能夠做這樣的事情,並有x和y出來的一樣:
y = datetime.datetime.utcfromtimestamp(time.mktime(x.timetuple()))
x = dateutil.parser.parse('Wed, 27 Oct 2010 22:17:00 GMT')
stamp = time.mktime(x.timetuple())
y = datetime.datetime.utcfromtimestamp(stamp)
x
datetime.datetime(2010, 10, 27, 22, 17, tzinfo=tzutc())
y
datetime.datetime(2010, 10, 28, 6, 17)
['timestamp =(x - datetime(1970,1,1,tzinfo = dateutil.tz.tzutc())).total_seconds()'](http://stackoverflow.com/a/8778548/4279) – jfs 2013-06-07 19:43:39