我得到格式的日期(YYYY-MM-DD)
然后我想添加 timedelta
mydate + timedelta(days=1)
我得到错误
coercing to Unicode: need string or buffer, datetime.timedelta found
mydate
是一个字符串。尝试这样做:
from datetime import datetime
parsed_date = datetime.strptime(mydate, "%Y-%m-%d")
new_date = parsed_date + timedelta(days=1)
客户端发送的数据将以 Unicode 格式发送,您必须在服务器端对其进行解析
datetime.strptime(date, '%Y-%m-%d')
如果它是表单的一部分,则数据应在清理时自动重新格式化(尽管您可能需要配置该字段以接受您期望的格式)。
您必须将字符串日期转换为 python datetime
:
>>> from datetime import datetime, timedelta
>>> dt_str = "2013/10/11"
>>> dt = datetime.strptime(dt_str, "%Y/%m/%d")
>>> new_dt = dt + timedelta(days=1)
>>> print new_dt
datetime.datetime(2013, 10, 12, 0, 0)
如果您现在想以字符串形式获取日期:
>>> print new_dt.strftime("%Y/%m/%d")
'2013/10/12'