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) 
结果截图:

相关文章:
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和key2re…...
分享6个对象数组去重的方法
大家好,关于对象数组去重的业务场景,想必大家都遇到过类似的需求吧,针对这样的需求,你是怎么做的呢。 下面我就先和大家讨论下基于对象的某个属性如何去重。 方法一:使用 .filter() 和 .findIndex() 相结合的方法 使…...
Formality:官方Tutorial(一)
相关阅读 Formalityhttps://blog.csdn.net/weixin_45791458/category_12841971.html?spm1001.2014.3001.5482 本文是对Synopsys Formality User Guide Tutorial中第一个实验的翻译(有删改),Lab文件可以从以下链接获取。 Formality官方Tu…...
力扣28找出字符串中第一个匹配项的下标
class Solution:def strStr(self, haystack: str, needle: str) -> int:# 特殊情况处理if not needle:return 0# 获取 haystack 和 needle 的长度a len(needle)b len(haystack)# 遍历 haystack,检查每个子字符串是否与 needle 匹配for i in range(b - a 1):if…...
【JAVA】java中将一个list进行拆解重新组装
一、使用场景 1、当需要对一个list中的元素属性进行重新赋值,比如一个list中存储了订单数据,我们需要改变list中每个订单的id,然后再重新输出订单list if(CollectionUtils.isNotEmpty(orderList)){ orderList.forEach(p->{ …...
在 Windows 上使用 SSH 密钥访问 Linux 服务器
本章目录: 前言1. 准备工作2. 生成 SSH 密钥对步骤 1:打开命令行步骤 2:运行 ssh-keygen 命令步骤 3:选择密钥保存位置步骤 4:设置密钥密码(可选)步骤 5:生成密钥对 3. 查看生成的密钥文件4. 将…...
小白0基础centos8安装docker
总述:博主作为0基础小白将详细记录第一次从centos8的下载到安装docker的过程,包括中间出现的问题和解决方案 1Centos8下载 参见博文CentOS 8 的安装(官方安装、清华大学开源软件镜像站、阿里云镜像、网易镜像下的安装步骤)_cent…...
机器学习之逻辑回归算法、数据标准化处理及数据预测和数据的分类结果报告
逻辑回归算法、数据标准化处理及数据预测和数据的分类结果报告 目录 逻辑回归算法、数据标准化处理及数据预测和数据的分类结果报告1 逻辑回归算法1.1 概念理解1.2 算法导入1.3 算法优缺点 2 LogisticRegression理解2.1查看参数定义2.2 参数理解2.3 方法2.4基本格式 3 数据标准…...
openGauss连接是报org.opengauss.util.PSQLException: 尝试连线已失败
安装好高斯数据库后然后用java连接时报如下错误: 解决方法: 在openGauss数据库的安装路径下/opt/opengauss/data/single_node(这个路径根据自己实际情况变化)有个pg_hba.conf文件,修改里面host内容如下,我这里设置的是所有ip都能…...
详细的一条SQL语句的执行流程
SQL 语句的执行流程会因数据库管理系统的不同而略有差异,但一般来说,主要包括以下几个阶段: 查询解析 词法分析:数据库系统首先将输入的 SQL 语句按字符流进行扫描,依据词法规则把它分割成一个个的单词,如…...
适用于小白的程序报错提问 AI 模板
#工作记录 程序报错提问 AI 模板 1、你现在将扮演python专家,请保持连续对话,请基于你的专业知识修改代码并回答! 2、可以向我询问任何有利于你分析问题的信息。 3、你修改的程序代码,运行后报错,报错信息我放在最后…...
web实操9——session
概念 数据保存在服务器HttpSession对象里。 session也是域对象,有setAttribute和getAttribute方法 快速入门 代码 获取session和塞入数据: 获取session获取数据: 请求存储: 请求获取: 数据正常打印:…...
OFDM学习-(二)长短序列和PPDU整体数据处理流程
OFDM学习 (二)长短序列和PPDU整体数据处理流程 OFDM学习前言一、短序列短序列的作用 二、长序列三、PLCP/SIGNAL/DATA数据处理流程三、fpga实现STS模块LTS模块训练序列模块仿真波形 总结 前言 根据框图可以知道发射机这部分信号在DA转换之前,…...
.NET周刊【12月第4期 2024-12-22】
国内文章 dotnet 简单使用 ICU 库进行分词和分行 https://www.cnblogs.com/lindexi/p/18622917 本文将和大家介绍如何使用 ICU 库进行文本的分词和分行。 dotnet 简单聊聊 Skia 里的 SKFontMetrics 的各项属性作用 https://www.cnblogs.com/lindexi/p/18621674 本文将和大…...
Conda 安装 Jupyter Notebook
文章目录 1. 安装 Conda下载与安装步骤: 2. 创建虚拟环境3. 安装 Jupyter Notebook4. 启动 Jupyter Notebook5. 安装扩展功能(可选)6. 更新与维护7. 总结 Jupyter Notebook 是一款非常流行的交互式开发工具,尤其适合数据科学、机器…...
鸿蒙开发:实现键值数据库存储
前言 鸿蒙当中数据持久化存储,为我们提供了多种的实现方式,比如用户首选项方式,关系型数据库方式,键值型数据库方式,文件存储方式等等,对于数据量比较的小的,我们直接选择轻量级的用户首选项方式…...
WebGL 实践(一)开发环境搭建
WebGL 是一种基于 JavaScript 的 API,用于在浏览器中渲染 2D和3D 图形,很多场景都能用,例如游戏开发、数据可视化、在线教育和虚拟现实等应用领域。 零、基础知识 相关基础知识很重要,如果会html、JavaScript等技术掌握起来会更…...
在线机考|2024华为实习秋招春招编程题(最新)——第3题_PCB印刷电路板布线_300分(八)
题目内容 在PCB印刷电路板设计中,器件之间的连线需要避免线路的阻抗值增大、而且赛件之间还有别的器件和别的干扰源,在布线时我们希望受到的干扰尽量小。现将电路板简化成一个MN的矩阵,每个位置(单元格)的值表示其源干扰度。 如果单元格的值为0,表示此位置没有干扰源;如果单…...
Spring源码分析之事件机制——观察者模式(三)
目录 自定义事件 事件监听器 事件发布者(服务层) 使用示例controller层 Spring源码分析之事件机制——观察者模式(一)-CSDN博客 Spring源码分析之事件机制——观察者模式(二)-CSDN博客 这两篇文章是这…...
C#实现画图,及实现图像运动,C#中GDI+图形图像技术(Graphics类、Pen类、Brush类)C#之快速入门GDI+绘图 C#实现快速画图功能
下载源码 <-------- 在C#的世界里,GDI如同一位多才多艺的艺术家,以其强大的绘图能力,让开发者能够轻松地在应用程序中挥洒创意,绘制出丰富多彩的图形世界。GDI不仅支持基本的几何图形绘制,还能处理复杂的图像处理任…...
(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)
题目:3442. 奇偶频次间的最大差值 I 思路 :哈希,时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况,哈希表这里用数组即可实现。 C版本: class Solution { public:int maxDifference(string s) {int a[26]…...
OpenLayers 可视化之热力图
注:当前使用的是 ol 5.3.0 版本,天地图使用的key请到天地图官网申请,并替换为自己的key 热力图(Heatmap)又叫热点图,是一种通过特殊高亮显示事物密度分布、变化趋势的数据可视化技术。采用颜色的深浅来显示…...
微信小程序 - 手机震动
一、界面 <button type"primary" bindtap"shortVibrate">短震动</button> <button type"primary" bindtap"longVibrate">长震动</button> 二、js逻辑代码 注:文档 https://developers.weixin.qq…...
令牌桶 滑动窗口->限流 分布式信号量->限并发的原理 lua脚本分析介绍
文章目录 前言限流限制并发的实际理解限流令牌桶代码实现结果分析令牌桶lua的模拟实现原理总结: 滑动窗口代码实现结果分析lua脚本原理解析 限并发分布式信号量代码实现结果分析lua脚本实现原理 双注解去实现限流 并发结果分析: 实际业务去理解体会统一注…...
Java面试专项一-准备篇
一、企业简历筛选规则 一般企业的简历筛选流程:首先由HR先筛选一部分简历后,在将简历给到对应的项目负责人后再进行下一步的操作。 HR如何筛选简历 例如:Boss直聘(招聘方平台) 直接按照条件进行筛选 例如:…...
Element Plus 表单(el-form)中关于正整数输入的校验规则
目录 1 单个正整数输入1.1 模板1.2 校验规则 2 两个正整数输入(联动)2.1 模板2.2 校验规则2.3 CSS 1 单个正整数输入 1.1 模板 <el-formref"formRef":model"formData":rules"formRules"label-width"150px"…...
排序算法总结(C++)
目录 一、稳定性二、排序算法选择、冒泡、插入排序归并排序随机快速排序堆排序基数排序计数排序 三、总结 一、稳定性 排序算法的稳定性是指:同样大小的样本 **(同样大小的数据)**在排序之后不会改变原始的相对次序。 稳定性对基础类型对象…...
[免费]微信小程序问卷调查系统(SpringBoot后端+Vue管理端)【论文+源码+SQL脚本】
大家好,我是java1234_小锋老师,看到一个不错的微信小程序问卷调查系统(SpringBoot后端Vue管理端)【论文源码SQL脚本】,分享下哈。 项目视频演示 【免费】微信小程序问卷调查系统(SpringBoot后端Vue管理端) Java毕业设计_哔哩哔哩_bilibili 项…...
莫兰迪高级灰总结计划简约商务通用PPT模版
莫兰迪高级灰总结计划简约商务通用PPT模版,莫兰迪调色板清新简约工作汇报PPT模版,莫兰迪时尚风极简设计PPT模版,大学生毕业论文答辩PPT模版,莫兰迪配色总结计划简约商务通用PPT模版,莫兰迪商务汇报PPT模版,…...
【Elasticsearch】Elasticsearch 在大数据生态圈的地位 实践经验
Elasticsearch 在大数据生态圈的地位 & 实践经验 1.Elasticsearch 的优势1.1 Elasticsearch 解决的核心问题1.1.1 传统方案的短板1.1.2 Elasticsearch 的解决方案 1.2 与大数据组件的对比优势1.3 关键优势技术支撑1.4 Elasticsearch 的竞品1.4.1 全文搜索领域1.4.2 日志分析…...
