淄博网站建设英文网站建设

郑州大之道商务信息咨询有限公司 2026/09/09 19:33:33

在 Python 中获取列表嵌套字典(多层嵌套)的键值对,需要根据数据的嵌套层级、结构是否固定,选择直接访问、循环遍历、递归解析或专用库查询等方式。以下结合典型的嵌套数据结构,分场景详细讲解。

一、先定义典型的多层嵌套数据

首先构造一个贴近实际业务的示例数据(列表嵌套字典,字典内又嵌套字典 / 列表),后续所有示例均基于此数据:

# 示例:京东商品列表(列表嵌套字典,字典多层嵌套) goods_data = [ { "goods_id": 1001, "goods_name": "华为Mate60 Pro", "detail": { "price": 6999.0, "stock": 200, "specs": [ {"color": "雅川青", "size": "256G"}, {"color": "白沙银", "size": "512G"} ], "seller": {"name": "华为官方旗舰店", "score": 4.9} } }, { "goods_id": 1002, "goods_name": "苹果iPhone 15", "detail": { "price": 5999.0, "stock": 500, "specs": [ {"color": "黑色", "size": "128G"}, {"color": "粉色", "size": "256G"} ], "seller": {"name": "苹果官方旗舰店", "score": 4.8} } } ]

二、场景 :结构固定,直接通过「索引 + 键」访问

如果数据的嵌套层级和键名是固定已知的,直接通过列表下标(如[0])和字典键(如["goods_id"])访问是最高效的方式。

示例 1:获取单个指定的键值对
# 1. 获取第一个商品的名称 first_goods_name = goods_data[0]["goods_name"] print("第一个商品名称:", first_goods_name) # 输出:华为Mate60 Pro # 2. 获取第一个商品的价格(字典嵌套字典) first_goods_price = goods_data[0]["detail"]["price"] print("第一个商品价格:", first_goods_price) # 输出:6999.0 # 3. 获取第一个商品的第一个规格的颜色(列表嵌套字典) first_spec_color = goods_data[0]["detail"]["specs"][0]["color"] print("第一个商品第一个规格颜色:", first_spec_color) # 输出:雅川青 # 4. 获取第二个商品的商家名称 second_seller_name = goods_data[1]["detail"]["seller"]["name"] print("第二个商品商家名称:", second_seller_name) # 输出:苹果官方旗舰店
注意:避免键不存在的报错

如果不确定键是否存在,可使用字典的get()方法(默认返回None,或指定默认值),避免KeyError

# 安全获取:若键不存在,返回默认值"未知" first_goods_brand = goods_data[0].get("brand", "未知") print("第一个商品品牌:", first_goods_brand) # 输出:未知(因为原数据无brand键) # 多层嵌套的安全获取(链式get) first_seller_score = goods_data[0].get("detail", {}).get("seller", {}).get("score", 0) print("第一个商品商家评分:", first_seller_score) # 输出:4.9

实际开发中,可根据数据结构的固定性和查询需求选择合适的方法:
• 简单固定结构:用直接访问+get()方法;
• 批量提取:用循环遍历;
• 未知结构:用递归解析;
• 复杂查询:用jsonpath-ng。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

郑州建设网站连云港网站建设

深入高通SoC启动链:fastboot驱动初始化机制全解析你有没有遇到过手机“变砖”,连系统都进不去,但通过一根USB线就能救回来?背后的关键技

2026/06/30 11:06:53

南宁网站建设互动网站建设

Kotaemon中的请求限流机制如何防止系统过载?在构建面向生产环境的智能对话系统时,一个常被低估但至关重要的问题浮出水面:当用户请求如潮水般涌来࿰

2026/06/30 12:16:00

宝山网站建设益阳网站建设

在数字时代的日常工作中,我们常常陷入重复性鼠标点击的困境。你是否想过,通过简单的鼠标轨迹就能完成复杂的系统操作?MouseInc设置界面正是这样一个革命性的工

2026/06/30 10:37:21

济南营销型网站建设网站建设的书

Linux 环境下迁移和运行 Windows 应用及瘦客户端计算全解析1. Win4Lin 产品分析Win4Lin 产品对于那些拥有现有 Windows 会话和软件,同时希望回收利用现有 PC 并逐步

2026/06/30 13:50:37

网站建设模板晋江网站建设

Zotero Style插件:5个简单步骤打造高效文献管理新体验【免费下载链接】zotero-stylezotero-style - 一个 Zotero 插件,提供了一系列

2026/06/30 13:03:34

网站建设书网站建设团队

F2抖音去水印工具终极完整指南:从零开始轻松下载高清无水印视频【免费下载链接】TikTokDownload抖音去水印批量下载用户主页作品、喜欢、收藏、图文、音频项目地址: https:/

2026/06/30 10:38:21

东莞网站建设淮北网站建设

嵌入训练曲线:用 Markdown 与 PyTorch-CUDA 镜像构建可复现的 AI 实验记录在深度学习项目中,你有没有遇到过这样的场景?几个月前跑通的一

2026/06/30 12:32:31

上海外贸网站建设服装网站建设

用OpenPLC玩转工业控制:从零开始点亮一盏灯你有没有想过,工厂里那些神秘的“黑盒子”——PLC(可编程逻辑控制器),其实也可以

2026/06/30 13:31:36

淮安网站建设低价网站建设

还在为Internet Download Manager的30天试用期到期而烦恼吗?IDM-Activation-Script开源项目为你提供了实用的解决方案。无论你是想管理试用期状态&

2026/06/30 11:01:53

广州网站建设公司天门网站建设

GLM-4.6V-Flash-WEB在UI设计评审中的自动反馈机制在数字产品开发节奏日益加快的今天,UI设计评审却常常成为流程中的“慢环节”:设计师提交一稿界面࿰

2026/06/30 12:13:30