如何访问Python多层嵌套列表字典中的Product_Name字段值
Python多层嵌套列表/字典的目标字段访问方法
按照嵌套层级逐层用索引(列表取值)、键(字典取值)定位,即可拿到最内层的Product_Name字段,各层级拆解如下:
- 最外层
list_1是列表类型,目标数据在索引为0的第一个元素中 - 取到的第一个元素是字典,取键
group_details对应的值,该值为列表类型 - 取
group_details对应列表索引为0的元素,是字典类型,取键data对应的值,为列表类型 - 取
data对应列表索引为0的元素,是字典类型,取键product_details对应的值,为列表类型 - 取
product_details对应列表索引为0的元素,就是存储目标字段的字典,直接取Product_Name键对应的值即可
可直接运行的实现代码
# 补全了原代码缺失的闭合括号,保证语法正确 list_1 = [{"group_details":[{"data":[{"product_details":[{"Product":"xyz","Invoice_No":"852","Product_Name":"abc"}]}]}]}] product_name = list_1[0]["group_details"][0]["data"][0]["product_details"][0]["Product_Name"] print(product_name)
运行后输出结果为:abc
*注意:上述直接索引/键的写法要求每一层结构固定、对应索引和键必然存在,否则会抛出索引越界或键不存在的错误。如果实际场景中嵌套结构可能有缺省,建议字典取值时用.get()方法设置默认值做容错处理。
内容的提问来源于stack exchange,提问作者raam
相关产品推荐
相关产品推荐

