为什么datetime.strTime输出的日期是序列化的?

2024-09-28 21:55:14 发布

您现在位置:Python中文网/ 问答频道 /正文

我只是尝试将日期字符串转换为日期:

import datetime
exampleDate = 'Jul 8 2021'
datetime.datetime.strptime(exampleDate, '%b %d %Y')

但是,我稍后将其输出到json,并得到一个错误:

datetime.datetime(2021, 7, 8, 0, 0) is not JSON serializable

可以在Python控制台中确认exampleDate不是作为日期打印出来的,而是以这种序列化方式打印出来的。我只想要:2021-07-08


Tags: 字符串importjsondatetime序列化is错误方式
1条回答
网友
1楼 · 发布于 2024-09-28 21:55:14

因为您不能将datetime.datetime放入JSON。 您需要将其格式化为字符串

d = datetime.datetime.strptime(exampleDate, '%b %d %Y')

type(d)datetime.datetime

现在,让我们将其转换为带有strftime的字符串:

date_str = d.strftime("%Y-%m-%d")
print(date_str)

您将获得预期的格式:2021-07-08。然后将其转换为JSON

相关问题 更多 >