2017-08-09 85 views

回答

2

与total_Seconds/3600,你只能得到个小时以十进制格式

您可以使用divmod到秒打破充分小时,分钟和秒:

divmod(A,B)

以两个(非复数)数字作为参数并返回一对由其商和余数组成的数字,当使用长分组时

看到https://docs.python.org/2/library/functions.html#divmod

代码将如下所示(I加入34秒在TIME2以检查秒部分是正确的):

from datetime import timedelta 
time1 = timedelta(days=2, hours=6.20) 
time2 = timedelta(hours=20.10, seconds=34) 
sum_time = time1 + time2 
print str(sum_time) 
hours, seconds = divmod(sum_time.total_seconds(), 3600) 
minutes, seconds = divmod(seconds, 60) 
print "%d:%02d:%02d" % (hours, minutes, seconds) 

和输出:

3 days, 2:18:34 
74:18:34 

的第一个divmod的结果是74小时(商),剩余时间为1114秒。 第二个divmod用从前一行的剩余秒数(1114)进行填充,并给出18分34秒的结果。

相关问题