Python 3.11中datetime.strptime转换日期字符串报错求助
问题原因与解决办法
你的报错核心是日期格式符不匹配:
- 小写的
%y仅用于匹配两位年份(比如示例里的23会被解析为2023) - 但你传入的日期字符串是四位年份
1964,这时候必须用大写的%Y(专门对应四位年份)
修正后的代码
import datetime dt = datetime.datetime.strptime('12/24/1964', "%m/%d/%Y")
额外注意点
dt.month是属性而非方法,直接写dt.month就能获取月份(不需要加括号())- 运行修正代码后,
print(dt)会输出1964-12-24 00:00:00;如果只想显示日期部分,可改用print(dt.date()),输出结果为1964-12-24
内容的提问来源于stack exchange,提问作者hstx12
相关产品推荐
相关产品推荐

