Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 2.7 如何在Python2.7中获得大于24小时的小时值?_Python 2.7 - Fatal编程技术网

Python 2.7 如何在Python2.7中获得大于24小时的小时值?

Python 2.7 如何在Python2.7中获得大于24小时的小时值?,python-2.7,Python 2.7,输出: time1 = timedelta(days=2, hours=6.20) time2 = timedelta(hours=20.10) sum_time = time1 + time2 print str(sum_time) print sum_time.total_seconds() / 3600 如何获得输出74:18:00?使用总秒数/3600只能获得十进制格式的小时数 您可以使用将秒分解为完整的小时、分钟和秒: divmod(a,b) 取两个(非复数)数作为参数,使用长除法时

输出:

time1 = timedelta(days=2, hours=6.20)
time2 = timedelta(hours=20.10)
sum_time = time1 + time2
print str(sum_time)
print sum_time.total_seconds() / 3600

如何获得输出74:18:00

使用
总秒数/3600
只能获得十进制格式的小时数

您可以使用将秒分解为完整的小时、分钟和秒:

divmod(a,b)

取两个(非复数)数作为参数,使用长除法时返回一对由其商和余数组成的数

代码如下所示(我在time2中添加了34秒以检查秒部分是否正确):

输出将是:

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)
第一个
divmod
的结果为74小时(商),剩余时间为1114秒。 第二个
divmod
与之前(1114)线路的剩余秒数一起馈送,并给出18分34秒的结果

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