2017-02-22 108 views
-2

我是Python新手,在运行这段代码时看到这个错误(下文),我做错了什么?TypeError:无法将'datetime.timedelta'对象隐式转换为字符

错误:

new_date = date + timedelta(days=10) 
TypeError: Can't convert 'datetime.timedelta' object to str implicitly 
+0

'date'是一个*字符串*通过使用'strftime()'。将一个字符串添加到timedelta中,你期望发生什么? –

回答

0

你转换一个datetime对象为字符串:

>>> from datetime import datetime 
>>> datetime.today().strftime("%m/%d/%y") 
'02/22/17' 

你不能总结字符串和timedelta对象。你可能希望得到一个datetime.date()对象,而不是:

from datetime import date, timedelta 

today = date.today() 
print(today + timedelta(days=10)) 

或提取与datetime.date() method日期:

today = datetime.today().date() 
print(today + timedelta(days=10)) 

如果您仍需要一个String对象,转换后申请日期计算:

future = today + timedelta(days=10) 
print(future.strftime('%m/%d/%y')) 
相关问题