2017-08-09 36 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秒的結果。

相關問題