使用jsonpath模块,需要 pip install jsonpath 安装即可。

当遇到层级比较深的字典时,要想取值使用jsonpath取值比较方便,可以一下取到。

如果取得值不存在,则返回False

import jsonpath

d = {
"error_code": 0,
"stu_info": [
{
"id": 314,
"name": "矿泉水",
"sex": "男",
"age": 18,
"addr": "北京市昌平区",
"grade": "摩羯座",
"phone": "18317155663",
"gold": 100,
"cars": [
{"car1": "bmw"},
{"car2": "ben-z"},
]
}
]

}
result=jsonpath.jsonpath(d,'$..car2') #模糊匹配
result=jsonpath.jsonpath(d,'$.stu_info') #取到stu_info这里的所有内容
result = jsonpath.jsonpath(d, '$.stu_info[0]') #取到stu_info里的第1个元素
result = jsonpath.jsonpath(d, '$.stu_info[0].id') # 取到stu_info里的第1个元素中的id
print(result)