我如何在Python中格式化时间?
让我说我有
time = 9.122491
时间以小时为单位,我需要将其转换为h:m格式。所以期望的输出应该是:
9:07
非常感谢任何帮助!
答案 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
将小数分数转换为分钟