JSON 序列化时,如何处理日期类型

1.JSON 序列化时,不支持datatime类型数据。
支持自动处理数据里类型有:
str ,int list,tuple,dict,bool,None

2.如何处理datatime类型数据

在转换类(DateToJson)的default方法中手工完成对日期类型的值处理。

3.代码示例

import json
from datetime import datetime, date

class DateToJson(json.JSONEncoder):
def default(self, obj):
if isinstance(obj, datetime):
return obj.strftime('%Y-%m-%d %H-%M-%S')
elif isinstance(self, data):
return obj.strftime('%Y-%m-%d ')
else:
return json.JSONEncoder

d = ['name', 5, True, (1, 2, 3), {'a': 1, 'b': 2}, {'data':datetime.now()} ]

d = {'name': 'Bill', 'date': datetime.now()}

print(json.dumps(d, cls=DateToJson, ensure_ascii=False))

你可能感兴趣的:(JSON 序列化时,如何处理日期类型)