我有一個(gè)這樣的timedelta時(shí)間:datetime.timedelta(0, 175, 941041)我想將其轉(zhuǎn)換為持續(xù)時(shí)間。例如:1 second 2-59 seconds1 minute2minutes-59minutes1 hour1 hour 50 minutes2 hours1 day 5 hours 45 minutes如何在Python中執(zhí)行此操作?首先,我嘗試將timedelta轉(zhuǎn)換成這樣的秒數(shù),然后再轉(zhuǎn)換成持續(xù)時(shí)間:def timedelta_to_seconds(td): return td.microseconds + (td.seconds + td.days * 86400) 但是在運(yùn)行此函數(shù)時(shí)出現(xiàn)此錯(cuò)誤:AttributeError: 'function' object has no attribute 'microseconds'
2 回答

一只名叫tom的貓
TA貢獻(xiàn)1906條經(jīng)驗(yàn) 獲得超3個(gè)贊
你可以做
>>> import datetime
>>> str(datetime.timedelta(0, 175, 941041))
'0:02:55.941041'
現(xiàn)在,您可以獲取小時(shí),分鐘,秒和毫秒。

三國(guó)紛爭(zhēng)
TA貢獻(xiàn)1804條經(jīng)驗(yàn) 獲得超7個(gè)贊
我認(rèn)為傳遞給該函數(shù)的不是時(shí)間增量,這就是為什么它沒(méi)有屬性微秒的原因。
我不時(shí)有這個(gè),當(dāng)我調(diào)用一個(gè)函數(shù)來(lái)獲取timedelta為
a=get_my_timedelta
代替
a=get_my_timedelta()
添加回答
舉報(bào)
0/150
提交
取消