2015-01-12 20 views

答えて

16

あなたは秒数を計算するためにtotal_seconds()を使用することができます。これは、その後、数分または数時間に変換することができます:

timedelta.total_seconds()を使用してフィッセルの答えを完了
>>> datetime.timedelta(days=3).total_seconds() 
259200.0 
+2

正しい答えをしかし、それを(時間、日)のペアにするために必要な単純な '// 60'と'%60'の使い方を追加すると便利です! –

+1

ありがとうございます。私はここで見つけた答えを使って終わりました:http://stackoverflow.com/questions/14190045/how-to-convert-datetime-timedelta-to-minutes-hours-in-python – ThomasD

0
offset_seconds = timedelta.total_seconds() 

if offset_seconds < 0: 
    sign = "-" 
else: 
    sign = "+" 

# we will prepend the sign while formatting 
if offset_seconds < 0: 
    offset_seconds *= -1 

offset_hours = offset_seconds/3600.0 
offset_minutes = (offset_hours % 1) * 60 

offset = "{:02d}:{:02d}".format(int(offset_hours), int(offset_minutes)) 
offset = sign + offset 
3

import datetime 
duration = datetime.timedelta(days = 2, hours = 4, minutes = 15) 

我々はtimedeltaオブジェクト得たら:

totsec = duration.total_seconds() 
h = totsec//3600 
m = (totsec%3600) // 60 
sec =(totsec%3600)%60 #just for reference 
print "%d:%d" %(h,m) 

Out: 52:15 
関連する問題