You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python如何将'12/Sep/21'格式日期字符串转换为'2021-09-12'格式

错误原因
  • strptime 解析格式与输入不匹配:输入日期用 / 做分隔符,原代码的解析格式用了空格,会直接抛出解析异常。
  • strftime 输出格式不符合需求:原代码输出的是日/月/年格式,和你需要的年-月-日格式不符。
正确实现

首先确保导入datetime模块,调整解析和输出的格式符即可:

import datetime

dte1 = '02/Sep/21'
# 按输入格式解析日期,分隔符对应为/
parse_dt = datetime.datetime.strptime(dte1, '%d/%b/%y')
# 按目标格式输出
dte2 = parse_dt.strftime('%Y-%m-%d')
print(dte2)

运行后输出结果为:2021-09-02

注意事项

如果运行时出现月份识别报错,大概率是你的系统locale不是英文,无法识别英文月份缩写,可在代码开头添加locale设置:

import locale
# 强制时间解析使用英文locale
locale.setlocale(locale.LC_TIME, 'en_US.UTF-8')

内容的提问来源于stack exchange,提问作者Chandra

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 07:18:00