3 回答

TA貢獻1836條經(jīng)驗 獲得超5個贊
您只需使用str()將timeDelta轉(zhuǎn)換為字符串即可。下面是一個例子:
import datetime
start = datetime.datetime(2009,2,10,14,00)
end = datetime.datetime(2009,2,10,16,00)
delta = end-start
print(str(delta))
# prints 2:00:00

TA貢獻2051條經(jīng)驗 獲得超10個贊
如您所知,您可以通過訪問.seconds屬性。
Python提供了內(nèi)置函數(shù)divmod()它允許:
s = 13420
hours, remainder = divmod(s, 3600)
minutes, seconds = divmod(remainder, 60)
print '{:02}:{:02}:{:02}'.format(int(hours), int(minutes), int(seconds))
# result: 03:43:40
或者,您可以使用模塊化和減法相結(jié)合的方法轉(zhuǎn)換為小時和余數(shù):
# arbitrary number of seconds
s = 13420
# hours
hours = s // 3600
# remaining seconds
s = s - (hours * 3600)
# minutes
minutes = s // 60
# remaining seconds
seconds = s - (minutes * 60)
# total time
print '{:02}:{:02}:{:02}'.format(int(hours), int(minutes), int(seconds))
# result: 03:43:40

TA貢獻1836條經(jīng)驗 獲得超13個贊
>>> str(datetime.timedelta(hours=10.56))10:33:36>>> td = datetime.timedelta(hours=10.505) # any timedelta object>>> ':'.join(str(td).split(':')[:2])10:30
timedelta
str()
print td
添加回答
舉報