我有日期字符串,如'1997-05-07'('year-month-day'),当我尝试将其转换为时间戳时(为了比较它们并有一些情节我需要转换它们)我得到这个错误:
ValueError: time data '1997-07-05' does not match format '%y-%m-%d'
我尝试的是:
time.mktime(datetime.datetime.strptime('1997-07-05','%y-%m-%d').timetuple())
答案 0 :(得分:1)
%y
格式要求没有世纪的年份为十进制填充数字。如果您要解析1997
,则需要使用%Y
。
您可以查看有关strptime
工作原因的更多信息in the official documentation。
答案 1 :(得分:1)
您的格式错误 - %y
仅匹配2位数年份。如果你想要"完整"年,您必须使用%Y
:
time.mktime(datetime.datetime.strptime('1997-07-05','%Y-%m-%d').timetuple())
868053600.0