2011-12-06 64 views

回答

4

datetime.strptime()對於你的問題不是正確的功能。它將像「11月30日00」這樣的字符串轉換爲struct_time對象。

您propably想

from datetime import datetime 
t = 1322745926.123 
datetime.fromtimestamp(t).isoformat() 

從這個代碼的結果是

'2011-12-01T14:25:26.123000' 

,如果你的時間碼是一個字符串,你可以這樣做:

from datetime import datetime 
t = "1322745926.123" 
datetime.fromtimestamp(float(t)).isoformat() 
2
datetime.datetime.utcfromtimestamp(1322745926.123) 

返回datetime.datetime(2011, 12, 1, 13, 25, 26, 123000)它在UTC時區。附:

a = pytz.utc.localize(datetime.datetime.utcfromtimestamp(1322745926.123)) 

你得到一個時區感知DateTime對象可以再轉換到你需要的任何時區:

a == datetime.datetime(2011, 12, 1, 13, 25, 26, 123000, tzinfo=<UTC>) 

a.astimezone(pytz.timezone('Europe/Paris')) 

# datetime.datetime(2011, 12, 1, 14, 25, 26, 123000, tzinfo=<DstTzInfo 'Europe/Paris' CET+1:00:00 STD>) 
+0

+1,PyTZ是不錯的庫,但應該指出,這不是標準的Python安裝的一部分。 – mac

2

使用此,

datetime.datetime.fromtimestamp(t) 
相關問題