Python 自带Json处理日期格式出错
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python 自带Json处理日期格式出错相关的知识,希望对你有一定的参考价值。
使用python自带的json,将数据转换为json数据时,datetime格式的数据会报错,出现如下错误提示:datetimeTypeError: datetime.datetime.now() is not JSON serializable。这是因为python自带的json无法处理,只好重写构造json类,遇到日期特殊处理,其余的用内置的就行。
代码:
import json
import datetime
class DateEncoder(json.JSONEncoder):
def default(self, obj):
if isinstance(obj, datetime.datetime):
return obj.strftime(‘%Y-%m-%d %H:%M:%S‘)
elif isinstance(obj, date):
return obj.strftime("%Y-%m-%d")
else:
return json.JSONEncoder.default(self, obj)
调用:
print(json.dumps(source_data, cls=DateEncoder) )
以上是关于Python 自带Json处理日期格式出错的主要内容,如果未能解决你的问题,请参考以下文章
将Dataset中的列类型转换为python中具有特定格式的日期时间类型时出错
从 Python 以 json 格式保存数据时,日期格式会自动更改