怎么把float转换成小时数分秒?

我的值在float中,我试图将它们转换为Hours:Min:Seconds,但我失败了。我关注了以下帖子:

例如,我有一个浮点格式的值:

time=0.6 
result = '{0:02.0f}:{1:02.0f}'.format(*divmod(time * 60, 60))

它给了我输出:

00:36

但实际上应该是“ 00:00:36”。我怎么得到这个?


莫回无
浏览 195回答 3
3回答

MYYA

Divmod函数仅接受两个参数,因此您将获得两个 Divmod()中的一个因此,您可以尝试执行以下操作:time = 0.6mon, sec = divmod(time, 60)hr, mon = divmod(mon, 60)print "%d:%02d:%02d" % (hr, mon, sec)

慕码人8056858

您可以使用datetime模块:import datetimetime = 0.6result = str(datetime.timedelta(minutes=time))

九州编程

您无法从任何地方获取小时数,因此首先需要提取小时数,即:float_time = 0.6  # in minuteshours, seconds = divmod(float_time * 60, 3600)  # split to hours and secondsminutes, seconds = divmod(seconds, 60)  # split the seconds to minutes and seconds然后,您可以处理格式,即:result = "{:02.0f}:{:02.0f}:{:02.0f}".format(hours, minutes, seconds)# 00:00:36
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python