Python对象转换成json格式
在转换python对象为json格式时遇到TypeError: <main.Student object at 0x0000016BF8648E10> is not JSON serializable这个问题。
想到可能是因为对象转json格式时无法对应,所以也就使用下面的方法class_to_json转成json格式。
使对象一一对应再转换。
default使python对象按照字典key:value来对应。
sort_keys=True是按顺序排列,
indent=4是格式化输出,也就是在输出前空多少格。
import json
class Student:
def __init__(self,name,age,number):
self.name = name
self.age = age
self.number = number
def class_to_json(object):
return json.dumps(object, default=lambda object: object.__dict__, sort_keys=True, indent=4)
if __name__ == '__main__':
s=Student("xiaoming",16,"123")
print (class_to_json(s))