python - ValueError:时间数据 '12/31/2017' 与格式 '%d-%m-%Y' 不匹配
问题描述
我正在处理日期数据并且看不到错误的答案,因为格式确实与我的日期数据匹配:
“2017 年 12 月 31 日”
“2017 年 12 月 31 日”
“2018 年 1 月 1 日”
“2018 年 1 月 1 日”
“2018 年 1 月 1 日”
“2018 年 1 月 1 日”
但是当我尝试转换时,我得到了这个错误
ValueError: time data '12/31/2017' does not match format '%d-%m-%Y'
我尝试切换 %m-%d 只是为了测试,但仍然得到相同的错误。
这是我尝试转换日期数据的代码:
from datetime import datetime
data.Date = data.Date.apply(lambda x:datetime.strptime(x, '%m-%d-%Y'))
如果有人给我一个线索如何解决这个问题,任何帮助将不胜感激?
解决方案
12/31/2017
是格式M/D/Y
,因为你不能有几个月的价值31
:)
此外,您忘记考虑正斜杠。尝试这个:
from datetime import datetime
data.Date = data.Date.apply(lambda x:datetime.strptime(x, '%m/%d/%Y'))
推荐阅读
- python - 在python中读写文件的正确方法
- elasticsearch - 在弹性搜索中过滤具有非嵌套映射的聚合键
- swift - 无法获取 extensionBundleID 的描述符
- c# - 在扩展类中访问 IHttpContextAccessor
- c - 奇怪的字符输出到终端
- jquery - 如何在 app.js 文件中使用 $get 方法而无需用户单击 (.click)?(jQuery Ajax)
- ubuntu - 我可以在vscode中登录两个不同的github帐户吗?
- python-3.x - 带有文本小部件的网格布局
- asp.net - 在布局页面中为局部视图使用模型
- python - PyInstaller .exe 文件提前终止而没有错误消息