假设我有一个名为
的变量time = 6.50
如何分割数字以便输出给用户:
print("Your total time was %i minutes and %i seconds. " %(minute, second))
我考虑将它们转换为字符串,但我需要能够将.50部分乘以60,这样我才能得到总秒数。
答案 0 :(得分:3)
您也可以使用divmod
,作为 -
minutes, seconds = divmod(int(time * 60), 60)
如果您希望秒数也具有毫秒(浮点精度),则可以将转换移至int
并执行 - divmod(time * 60, 60)
。
演示 -
>>> time = 6.50
>>> divmod(time * 60, 60)
(6.0, 30.0)
>>> time = 6.55
>>> divmod(time * 60, 60)
(6.0, 33.0)
>>> time = 6.53
>>> divmod(time * 60, 60)
(6.0, 31.80000000000001)
>>> time = 6.55
>>> divmod(int(time * 60), 60)
(6, 33)
但请注意,浮点数不精确,因此您可能会获得近似值而非准确的结果。
答案 1 :(得分:2)
time = 6.50
minute, second = int(time), (time%1)*60
print("Your total time was %i minutes and %i seconds. " %(minute, second))