Python_jsonPath模块的使用
2024-09-05 02:36:42
jsonpath简介
如果有一个多层嵌套的复杂字典,想要根据key批量提取value,还是比较繁琐的。jsonPath模块就能解决这个痛点,接下来我们来学习一下jsonpath模块。
因为jsonpath是第三方模块,想要使用需要安装
pip install jsonpath
jsonpath使用方法
import jsonpath
res=jsonpath.jsonpath(dict_data,'jsonpath语法规则字符串')
根据给定jsonpath语法规则,在dict_data中若能找到对应的数据,则以list类型返回数据,若找不到则返回false。
jsonpath语法规则
jsonpath使用示例
book_dict = {
"book": [
{"category": "reference",
"author": "Nigel Rees",
"title": "Sayings of the Century",
"price": 8.95
},
{"category": "fiction",
"author": "Evelyn Waugh",
"title": "Sword of Honour",
"price": 12.99
},
{"category": "fiction",
"author": "Herman Melville",
"title": "Moby Dick",
"isbn": "0-553-21311-3",
"price": 8.99
},
{"category": "fiction",
"author": "J. R. R. Tolkien",
"title": "The Lord of the Rings",
"isbn": "0-395-19395-8",
"price": 22.99
}
],
"bicycle": {
"color": "red",
"price": 19.95
}
} from jsonpath import jsonpath # 获取price的所有值
print(jsonpath(book_dict, '$..price')) # 获取book下面所有元素
print(jsonpath(book_dict, "$.book.*")) # 获取book下面所有price的值
print(jsonpath(book_dict, "$.book[*].price"))
print(jsonpath(book_dict, "$.book..price")) # 获取第1本书所有信息
print(jsonpath(book_dict, "$.book[0]")) # 获取第2~3本书所有信息
print(jsonpath(book_dict, "$.book[1:3]")) # 获取最后一本书
print(jsonpath(book_dict, "$.book[(@.length-1)]")) # 获取包含了isbn的所有书
print(jsonpath(book_dict, "$.book[?(@.isbn)]")) # 获取书的价格小于10的书
print(jsonpath(book_dict, "$.book[?(@.price<10)]"))
执行结果
最新文章
- spring aop的使用
- C# winform开发:Graphics、pictureBox同时画多个矩形
- JAVA类和对象课后作业
- Create a geoprocessing tool to buffer a layer and retrieve messages____sync
- 解决ubuntu下安装mysql使用service无法启动问题
- Codeforces Round #353 (Div. 2)Restoring Painting
- 郝文菲get技能的经验--20155308
- 【UER #1】[UOJ#12]猜数 [UOJ#13]跳蚤OS [UOJ#14]DZY Loves Graph
- Ubuntu 13.10 Rhythmbox 播放器不能播放MP3。安装插件
- JS仿淘宝详情页菜单条智能定位效果
- WebService应用--使用java开发WebService程序
- Python函数--装饰器进阶
- C# MVC 微信支付教程系列之公众号支付
- Hadoop(三) HADOOP常用命令参数介绍
- 探索未知种族之osg类生物---呼吸分解之事件循环二
- 初识java java的加载与执行(JDK,JVM,JRE关系解释)
- ADOX创建ACCESS 表时,几个附加属性
- 总结一下公司项目使用各种较新的前端技术和 Api 的一些经验。
- 如何设置mysql允许外网访问
- JS——EasyuiCombobox三级联动