不工作的Python毫秒时间

时间:2013-06-20 09:44:06

标签: python datetime time floating-point format

我已阅读Stackoverflow中的所有帖子,python docs中的“time”文档,但未找到如何使浮动时间。

 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))

2 个答案:

答案 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'

答案 1 :(得分:2)

实际上%f是微秒:

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

返回

00:01:00.500000