我有一个web应用程序,使用Django作为后端。我使用python3中的datetime.strptime
函数将日期转换为需要输入到Mysql数据库的格式。但我得到了错误:ValueError: time data 'July 31, 2021' does not match format '%m %d, %Y'
end_date = request.GET.getlist('end_date')[0] # end_date = 'July 31, 2021' in the test case
end_date_converted = datetime.strptime(end_date, "%m %d, %Y").strftime("%Y-%m-%d")
如何将'July 31, 2021'
转换为YYYY-MM-DD
格式,以便将其保存到MYSQL日期列?
根据文档%m
是"月作为零填充的十进制数字">,而不是月份名称。你应该使用
%B %d, %Y
作为格式说明符。例如:
>>> datetime.strptime('July 31, 2021', '%B %d, %Y').strftime('%Y-%m-%d')
'2021-07-31'
将%m替换为%B,后者将解码月份全名