2017-09-12 103 views
-2

我timedelta物體看起來像這樣:txdelta = 00:30:00。我想將它添加到DateTime對象,但它始終是不工作:添加timedelta對象爲datetime

from datetime import datetime, date, time, timedelta 
localdt = datetime.combine(datetime.strptime('2015-06-18', '%Y-%m-%d').date(), 
(23:35:02+timedelta(txdelta)).time()) 

注意,23:35:02已經是DateTime對象。我收到此錯誤消息:

TypeError: unsupported type for timedelta days component: datetime.timedelta 

我在做什麼錯?創建

+0

更新您的例子,令其在Python 2.7運行原樣。現在它返回'語法錯誤:無效syntax'。讓它回到你聲稱的錯誤。參見[MCVE]爲準則,以張貼代碼。 –

回答

1

的方式你time對象是陌生的。我強烈建議你這樣聲明它,如果你不使用它:

txdelta = timedelta(minutes=30) 
tdelta = time(hour=1, minute=35, second=2) 

如果我得到了它好你試圖將date,一個timetimedelta結合起來。下面的完整的代碼應該做的伎倆:

from datetime import datetime, date, time, timedelta 

txdelta = timedelta(minutes=30) 
tdelta = time(hour=1, minute=35, second=2) 
localdt = datetime.combine(datetime.strptime('2015-06-18', '%Y-%m-%d').date(), tdelta) + txdelta 

print(localdt) 

基本上,你把DateTime對象有一個時間,你只需在後面加上這個timedelta對象。

輸出是:

2015-06-18 02:05:02