将json数据转换为python对象

通过json.load的object_hook参数实现,代码如下

>>> import json
>>> from collections import namedtuple
>>> data = {'name': 'xiecl', 'age': 16}
>>> json_str = json.dumps(data)
>>> json_str
'{"name": "xiecl", "age": 16}'
>>> data = json.loads(json_str, object_hook=lambda d: namedtuple('data', d.keys())(*d.values()))
>>> data
data(name='xiecl', age=16)
>>> data.name
'xiecl'
>>> data.age
16
posted @ 2018-11-15 09:49  xiecl  阅读(3579)  评论(0编辑  收藏  举报