2017-09-12 1 views
-2

timedelta 객체는 다음과 같습니다 : txdelta = 00:30:00. 나는 날짜 객체에 추가 할 수 있지만 일관되게 작동하지 않는 경우 : 23:35:02 이미 날짜 객체입니다datetime에 timedelta 객체 추가

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()) 

참고. 이 오류 메시지가 표시됩니다.

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

무엇이 잘못 되었나요?

+0

업데이트 귀하의 예제를 그대로 파이썬 2.7에서 실행되도록. 지금은'SyntaxError : invalid 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) 

는 기본적으로, 당신은 한 번에 하나 날짜 시간 개체를 결합, 당신은 단순히 나중에 timedelta 개체를 추가 : 전체 코드는 아래의 트릭을해야한다.

출력은 다음과 같습니다

2015-06-18 02:05:02