如何将我的日期转换为稍微不同的格式



date='9/2020'。

现在,在excel上,我使用TEXT(日期,YYYYMMDD(格式进行转换,我如何在python中复制相同的格式?

我试着使用日期时间函数

d = datetime.strptime(date, '%Y%m%d')

但是我得到了值错误ValueError: time data '9/4/2020' does not match format '%Y%m%d'

我该怎么解决这个问题?

不确定是否需要这样的输出:

date = '9/4/2020'
d = datetime.datetime.strptime(date, '%d/%M/%Y')
print(d)

输出:

2020-01-09 00:04:00

在Python中,这被称为strptime(字符串解析时间,即从字符串获取时间对象(和strftime(字符串从时间,从时间对象获取字符串表示-相反的过程(。

Python文档中列出了各种时间符号。您需要准确描述时间的格式,包括分隔符(如/-(。在两者之间,根据文档中的代码表示年、月、日等。所以在你的情况下:

d = datetime.strptime(date, '%d/%M/%Y')

会给你时间对象,然后你可以使用

print(datetime.strftime(d, '%Y%M%d'))

去买新的。

或者在一行中:

d = strftime(strptime('9/4/2020', '%d/%M/%Y'), '%Y%M%d')

应该起作用。(假设第一天到来。(

首先需要在格式中使用小写m。转换为datetime后,只需使用strftime 转换回字符串

d = datetime.strptime(date, '%d/%m/%Y').strftime('%Y%m%d')

另一种选择是只拆分字符串日期:

f"{date.split('/')[2]}{date.split('/')[1].zfill(2)}{date.split('/')[0].zfill(2)}"
'20200409'

这应该可以实现您想要的:

d = datetime.strptime(date, '%d/%M/%Y')  # Convert string to date
new_date_format = d.strftime("%Y%m%d")  # Set your custom date format
print('My new Date format: {}'.format(new_date_format)). # Print the result

相关内容

  • 没有找到相关文章

最新更新