使用Python更改这些字符串的日期格式



我有一个pdf格式的字符串,我想把它转换成我以后要使用的日期格式,

字符串是05 dec22

如何更改为12/05/2022?

import datetime

date1 = '05Dec22'
date1 = datetime.datetime.strptime(date1, '%d%m%Y').strftime('%m/%d/%y')
date1 = str(date1)

这是我到目前为止尝试的

如果执行该代码,您将得到以下错误,

ValueError: time data '05Dec22' does not match format '%d%m%Y'

这是因为您的时间字符串不是给定的指定格式('%d%m%Y')。你可以在互联网上搜索表,其中显示了代表某种格式的占位符,如果你看这里提供的一个,你会看到字符串的格式是'%d%b%y',在这种情况下,%b占位符代表缩写的月份名称和%y占位符是年份没有世纪,就像你的例子字符串。现在,如果你在代码中修正了这个问题,

import datetime

date1 = '05Dec22'
date1 = datetime.datetime.strptime(date1, '%d%b%y').strftime('%m/%d/%Y')
date1 = str(date1)

你会得到想要的结果。注意,您还必须在strftime中更改输出格式。如前所述,%y占位符是年份,不包含世纪。要获得包含世纪的年份,必须使用% y。

最新更新