我需要将数字时间值转换为LRC时间格式。这是我写的
def lrc_time(t):
seconds = int(t)
millis = t - seconds
return '[%02d:%02.2f]' % (seconds / 60, seconds % 60 + millis)
代码以
运行>>> print lrc_time(20.5)
[00:20.50]
>>> print lrc_time(65.0) # I suppose it to be "[01:05.00]", but
[01:5.00]
问题是,与%02d
不同,%02.2f
在数字小于10时在填充部分之前不会填充0.实际上它似乎与{{1}相同}。
那么正确的方法是什么?
答案 0 :(得分:1)
我得到了它:
"%05.02f" % (4.5623,)
因此,前缀为零,数字作为字符串将具有5个字符的宽度(在这种情况下,2个整数位,周期和2个十进制数字),以及2个小数点精度。