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

佛山市享家陶瓷科技有限公司 2026/09/09 17:24:47

在 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。

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

外贸网站建设机票网站建设

iOS-Tagent终极指南:快速掌握iOS自动化测试【免费下载链接】iOS-TagentiOS support agent for automation项目地址: https://gi

2026/06/30 13:02:04

胶州网站建设网站设计与建设

微PE启动优盘驱动老旧设备运行IndexTTS2:让旧电脑也能发声在许多学校机房、社区服务中心甚至偏远地区的办公室里,仍有不少尘封已久的“老古董”电脑——它们或许是十年前的

2026/06/30 11:17:54

建设网站制作网站建设空间

第一章:Git工作树在Docker环境中的核心价值在持续集成与持续部署(CI/CD)流程中,Git工作树与Docker容器的协同运作成为提升开发

2026/06/30 13:00:34

长沙网站建设辽宁网站建设

第一章:揭秘Open-AutoGLM智能体部署的核心挑战在将Open-AutoGLM这类基于大语言模型的智能体投入实际生产环境时,开发者面临多重技术挑战。从资源调度到模型推

2026/06/30 11:35:56

广州企业网站建设莱芜网站建设

2025年QQ音乐解析工具:三步轻松获取高品质音乐资源【免费下载链接】MCQTSS_QQMusicQQ音乐解析项目地址: https://gitcode.com/gh_mirrors/m

2026/06/30 13:05:35

网站建设规划书兰州网站建设

2025年2月,教育部、工信部联合发布《数据安全人才培养行动计划(2025-2030年)》,明确到2025年培养10万名数据安全专业人才

2026/06/30 10:48:22

网站建设专业网站建设哪家好

提升lora-scripts项目协作与复现效率:从自动化训练到结构化日志的工程实践在生成式AI快速落地的今天,越来越多团队开始尝试用LoRA(Low-Rank

2026/06/30 10:22:50

免费建设网站物流网站建设

Anaconda 修改默认环境路径的实践与思考在深度学习项目开发中,你是否曾遇到这样的窘境:系统盘空间突然告急,排查发现~/anaconda3/envs/下堆

2026/06/30 10:28:20

长沙网站建设衡水网站建设

文章目录Nginx + Keepalived 实现高可用主从架构:配置、交付、验证与运维全流程指南一、方案目标二、架构设计网络拓扑图(简化版)三、环境准备四、安装与基础配置1. 安装 Nginx 和

2026/06/30 14:09:39

内蒙古网站建设微网站建设

Gping Graph Ping1介绍gping能够以折线图的方式,实时展示 ping 的结果,支持 Windows、Linux 和 macOS 操作系统。并且支持多个目标

2026/06/30 12:17:00