如何用Python将日期字符串05Dec22转换为12/05/2022格式?
日期字符串格式转换修正方案
你的代码问题出在datetime.strptime的格式匹配参数错误:
- 输入日期中的月份是三位缩写(
Dec),应该用%b而非%m(%m对应两位数字月份,比如12) - 输入的年份是两位数字(
22),应该用%y而非%Y(%Y对应四位数字年份)
同时,如果你要输出四位年份的12/05/2022,strftime的格式参数应该用%m/%d/%Y,而不是%m/%d/%y(后者对应两位年份)。
修正后的代码如下:
import datetime date1 = '05Dec22' # 按输入格式解析日期 parsed_date = datetime.datetime.strptime(date1, '%d%b%y') # 转换为目标格式 formatted_date = parsed_date.strftime('%m/%d/%Y') print(formatted_date) # 输出:12/05/2022
另外,strftime返回的本身就是字符串,不需要再用str()转换。
内容的提问来源于stack exchange,提问作者Hay Team
相关产品推荐
相关产品推荐

