python里的jsonpath_python-jsonpath模块

前言

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

jsonPath用符号$表示最外层对象

基本语法

import jsonpath

res=jsonpath.jsonpath(dic_name,'$..key_name')

res=jsonpath.jsonpath(dic_name,'$.key_name')

#嵌套n层也能取到所有key_name信息,其中:“$”表示最外层的{},“..”表示模糊匹配,“.”表示子节点,当传入不存在的key_name时,程序会返回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') #模糊匹配,$代表最外层,无论这个key的位置在哪里都能找到。如果对应的是多个Key,那么返回的是一个list

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)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值