Python 向特定日期添加天数时获取值错误
我正在使用Python为Python中的特定日期添加2天。使用Python 向特定日期添加天数时获取值错误,python,datetime,Python,Datetime,我正在使用Python为Python中的特定日期添加2天。使用datetime.now()。但不使用特定日期。代码如下: import datetime start_date = datetime.datetime.strptime('7/18/2016','%m/%d/%y') date_to_start_predicting = start_date + datetime.timedelta(days=2) # Add 2 days print(date_to_start_predic
datetime.now()。但不使用特定日期。代码如下:
import datetime
start_date = datetime.datetime.strptime('7/18/2016','%m/%d/%y')
date_to_start_predicting = start_date + datetime.timedelta(days=2) # Add 2 days
print(date_to_start_predicting)
但我得到了以下错误:
回溯(最近一次呼叫最后一次):
文件“C:/Users/Admin/Projects/DateAdd.py”,第3行,在
开始日期=datetime.datetime.strtime('7/18/2016','%m/%d/%y')
文件“C:\Python27\lib\\ u strtime.py”,第328行,在\ u strtime中
数据_字符串[found.end():])
ValueError:未转换的数据仍然存在:16
原因可能是什么?使用以下方法:
start_date = datetime.datetime.strptime('7/18/2016','%m/%d/%Y')
(我已将小写的y
改为大写的y
)添加部分没有问题。您只是使用了错误的格式
您应该将其更改为:
start_date = datetime.datetime.strptime('7/18/2016','%m/%d/%Y')
如你所见
我将y
更改为y
,因为您每年使用4位数字。您正在解析格式为'%m/%d/%y'
的字符串'7/18/2016'
%y
尝试以2位数格式解析年份部分(因此日期对象的年份为1920)。因此,2016
变成了20
,剩下的16
就是错误所说的
您应该使用%Y
(以4位数字格式解析年份)而不是%Y