立即学习:https://edu.csdn.net/course/play/26755/340152?utm_source=blogtoedu
题一:如何将一个JSON文档映射为对象
步骤分为两步
1,读取JSON内容
2,把内容转化为对象
import json
class Product:
def __init__(self,d):
self.__dict__ = d
f = open('files/product.json','r')
jsonStr = f.read()
print(jsonstr)
product = json.loads(jsonStr,object_hook=Product)
#print(type(product))
print(product.name)
print(product.price)
方法二
def json2Product(d):
return Product(d)
product1 = json.loads(jsonStr,object_hook=json2Product)
print(product1.name)
print(product1.price)
总结:json模块的loads函数可以装载JSON文档,并将其转换为JSON对象。关键需要通过object_hook参数指定钩子对象,然后在类的构造方法中将传入的JSON对象赋给内部变量__dict__