在项目中需要将类转换成json的格式存储,考虑到比较简单的方式是继承json自带的JSONEncoder,修改其中的内容使其可以将类转换成我需要的json形式。
在官网有找到如下内容:
import json
class ComplexEncoder(json.JSONEncoder):
def default(self, obj):
if isinstance(obj, complex):
return {"real": obj.real, "imag": obj.imag}
return json.JSONEncoder.default(self, obj)
tmp = json.dumps(2+1j, cls=ComplexEncoder)
print typeof(tmp)
print ComplexEncoder().encode(2+1j)
输出结果:
{"real": 2.0, "imag": 1.0}
本文详细介绍了如何通过继承Python内置的JSONEncoder类并重写其default方法,来实现在项目中将类对象转换为JSON格式的需求。以复数类为例,演示了如何将复数对象转换为JSON字典。
994

被折叠的 条评论
为什么被折叠?



