2012-04-10 42 views
1

考虑下面的例子:奇数输出在Python

seconds = totalTime % 60 
minutes = (totalTime - seconds) % (60 ** 2) 
hours = (totalTime - (minutes * 60))/(60 ** 2) 

finalTime = '{0:.0f}h {1:.0f}m {2:.0f}s'.format(hours, minutes, seconds) 

当我设置TOTALTIME 7000例如(不到两小时一点点),我得到的回报如下:

-55h 3360m 39s 

呵呵!?这种情况与任意数量的数字我给它...如果它有助于继承人一个例子:

totalTime = 10000 

-44h 2760m 39s 

回答

8

您正在测量分钟秒。要解决你的代码,你要分minutes 60:

minutes = (totalTime - seconds) % (60 ** 2)/60 

不过,也有更容易的方法来做到这一点,例如

hours, seconds = divmod(totalTime, 60 ** 2) 
minutes, seconds = divmod(seconds, 60) 
1

minutes实际上以秒为单位。在那里做60除法。

0

嗯,我认为正确的表述应该是:

seconds = totalTime % 60 
minutes = (totalTime/60) % 60 
hours = totalTime/(60 ** 2)