Python datetime.strptime日期转换报错:时间数据与格式不匹配
解决日期格式匹配错误的方案
你的代码存在两处格式符使用错误,导致无法匹配目标日期字符串:
- 月份部分:目标字符串是英文月份缩写
Aug,对应的格式符应为%b(用于匹配英文月份缩写,如Jan/Feb/Mar等),你误用的%m是匹配两位数字形式的月份(如08) - 上午/下午标识:字符串里的
AM需要用%p来匹配,且要和时间部分用空格隔开,你写的%I:%Mp是错误写法,正确格式为%I:%M %p
修正后的代码如下:
from datetime import datetime # 注意导入datetime模块 fechaDAT = 'Aug 6, 2022, 10:44 AM' dateC = datetime.strptime(fechaDAT, "%b %d, %Y, %I:%M %p") print(dateC) # 输出结果:2022-08-06 10:44:00
补充说明:%d可以兼容匹配一位或两位数字的日期(无论输入是6还是06都能正确识别),因此日期部分的格式符无需调整。
内容的提问来源于stack exchange,提问作者schradernm
相关产品推荐
相关产品推荐

