当前位置: 首页 > news >正文

Python提取目标Json键值:包含子嵌套列表和字典

目标:取json中所有的Name、Age字典

思路:递归处理字典中直接包含子字典的情况,

import jsondef find_targ_dicts(data,key1,key2):result = {}if isinstance(data, dict):if key1 in data and key2 in data: # 第一层字典中包含key1和key2result[key1] = data[key1]result[key2] = data[key2]yield resultfor k, v in data.items():yield from find_targ_dicts(v, key1, key2) # 递归处理子字典elif isinstance(data, list):for item in data:yield from find_targ_dicts(item, key1, key2)# 示例JSON数据
json_data = '''
{"name": "mkdm","age": 30,"children": [{"name": "Ace","age": 10},{"name": "Bob","age": 8},{"tt":{"name": "coh","age": 9}}],"address": {"city": "shbj","addr": "sccd"}
}
'''# 将JSON字符串转换为Python对象
data = json.loads(json_data)# 提取所有的字典
dicts = list(find_targ_dicts(data,'name','age'))
print(dicts)
# 打印所有的字典
for d in dicts:print(d)

结果截图:

http://www.lryc.cn/news/514719.html

相关文章:

  • 分享6个对象数组去重的方法
  • Formality:官方Tutorial(一)
  • 力扣28找出字符串中第一个匹配项的下标
  • 【JAVA】java中将一个list进行拆解重新组装
  • 在 Windows 上使用 SSH 密钥访问 Linux 服务器
  • 小白0基础centos8安装docker
  • 机器学习之逻辑回归算法、数据标准化处理及数据预测和数据的分类结果报告
  • openGauss连接是报org.opengauss.util.PSQLException: 尝试连线已失败
  • 详细的一条SQL语句的执行流程
  • 适用于小白的程序报错提问 AI 模板
  • web实操9——session
  • OFDM学习-(二)长短序列和PPDU整体数据处理流程
  • .NET周刊【12月第4期 2024-12-22】
  • Conda 安装 Jupyter Notebook
  • 鸿蒙开发:实现键值数据库存储
  • WebGL 实践(一)开发环境搭建
  • 在线机考|2024华为实习秋招春招编程题(最新)——第3题_PCB印刷电路板布线_300分(八)
  • Spring源码分析之事件机制——观察者模式(三)
  • C#实现画图,及实现图像运动,C#中GDI+图形图像技术(Graphics类、Pen类、Brush类)C#之快速入门GDI+绘图 C#实现快速画图功能
  • 【51单片机零基础-chapter6:LCD1602调试工具】
  • 算法题(24):只出现一次的数字(二)
  • 趣味编程:心形曲线
  • C# 设计模式(结构型模式):享元模式
  • 计算机毕业设计Django+Tensorflow音乐推荐系统 音乐可视化 卷积神经网络CNN LSTM音乐情感分析 机器学习 深度学习 Flask
  • mysql 死锁案例及简略分析
  • 第四届计算机、人工智能与控制工程
  • RIP配置实验
  • C# 整型、浮点型 数值范围原理分析
  • Adobe Acrobat Pro DC 2023 下载安装教程,附详细图文
  • stable diffusion秋叶启动器安装roop插件