用Python格式化时间?

时间:2013-10-06 23:44:04

标签: python formatting

我如何在Python中格式化时间?

让我说我有

time = 9.122491

时间以小时为单位,我需要将其转换为h:m格式。所以期望的输出应该是:

9:07

非常感谢任何帮助!

2 个答案:

答案 0 :(得分:3)

使用datetime模块:

>>> from datetime import datetime, timedelta
>>> mytime = 9.122491
>>> temp = timedelta(hours=mytime)
>>> print((datetime(1, 1, 1) + temp).strftime('%H:%M'))
09:07

答案 1 :(得分:1)

如果您不想使用模块,可以这样简单地完成:

>>> t = 9.122491
>>> print '%d:%02d' % ( int(t), t%int(t)*60 )
9:07

%02d将数字格式化为前导零(如果长度小于2位数

t%int(t)有效地摆脱了整数(11.111变为.111),然后*60将小数分数转换为分钟