假设您已经了解了JSON对象到Python对象的类型转换关系。 有如下JSON字符串:
json_str = '''
{
"school": {
"students": [
{
"name": "小明",
"age": 12,
"sex": "male"
},
{
"name": "小红",
"age": 13,
"sex": "female"
},
{
"name": "小强",
"age": 14,
"sex": "male"
}
],
"school_name": "光明中学",
"manager": "大强",
"age": 100
}
}
'''
传统的解析方式:
import json
data = json.loads(json_data)
# 取所有学生的姓名
names = []
for stu in data['school']['students']:
names.append(stu['name'])
print(names) # ['小明', '小红', '小强']
奇葩的解析方式:(完全等价于上面的写法)
安装:pip install UniversalParser
import UniversalParser as UP
manager = UP.parse_json(json_data)
names = [stu.name for stu in manager | 'students']
print(names) # ['小明', '小红', '小强']
好处是显而易见的,除了快速定位这一优点外,简洁和易于维护的代码更是选择它的理由。
在线文档:链接