2013-06-20 33 views
0

我已經閱讀了所有帖子在Stackoverflow,文檔中的「時間」在Python文檔中,但沒有找到如何使浮動時間。不工作Python毫秒時間

import time 
time.strftime('%H:%M:%S.%f', time.gmtime(60.5)) 

回報00:01:00%F

我想要採取00:01:00.500

我沒能找到類似的問題。

最終的解決方案是:

datetime.datetime.utcfromtimestamp(60.5).strftime('%H:%M:%S')+'.'+str(int(int(datetime.datetime.utcfromtimestamp(60.5).strftime('%f'))/1000)) 
+0

您確認您已經閱讀所有職位堆棧溢出? :-) –

回答

2

time模塊不支持%f毫秒格式化,因爲time.struct_time tuple不支持毫秒。

datetime模塊確實支持毫秒。使用該模塊來代替:

import datetime 

datetime.datetime.utcfromtimestamp(60.5).strftime('%H:%M:%S.%f') 

演示:

>>> datetime.datetime.utcfromtimestamp(60.5).strftime('%H:%M:%S.%f') 
'00:01:00.500000' 
+0

我使用的是linux – xercool

+0

糟糕,誤讀你的問題,會更新。 –

+0

如何實現毫秒,而不是微秒(毫秒/ 1000)(也許這裏存在任何格式文字)? – xercool

2

其實%f是微秒:

from datetime import datetime 
'{:%H:%M:%S.%f}'.format(datetime.utcfromtimestamp(60.5)) 

回報

00:01:00.500000 
+0

是啊!謝謝! – xercool

+2

但'time.strftime()'格式不支持它,只有'datetime.datetime.strftime()'(以及擴展名'format()')。 –

+1

你可以使用'format(datetime.utcfromtimestamp(60.5),'%H:%M:%S.%f')'並放棄字符串模板的其餘部分。 –