Python:如何从嵌套字典中提取每个好友的description值?
提取嵌套字典中每个好友的description字段
你的代码当前只遍历了外层字典的键(好友名称),所以输出的是名字列表。要获取每个好友的描述,需要访问键对应的子字典并提取description字段,以下是几种实现方式:
方式1:修改原有代码(直观易懂)
直接在遍历键的过程中,通过键获取子字典的description:
# 先收集所有描述再打印 descriptions = [] for friend_name in friends: # 通过好友名称获取对应的子字典,再提取description desc = friends[friend_name]["description"] descriptions.append(desc) # 逐个打印描述 for desc in descriptions: print(desc)
如果不需要收集,直接遍历打印更简洁:
for friend_name in friends: print(friends[friend_name]["description"])
方式2:直接遍历子字典(更简洁)
使用字典的values()方法,直接获取外层字典的所有值(即每个好友的子字典),省去通过键取值的步骤:
for friend_info in friends.values(): print(friend_info["description"])
方式3:列表推导式(Pythonic写法)
适合需要先收集所有描述再进行后续处理的场景:
# 用列表推导式一次性收集所有描述 descriptions = [friend["description"] for friend in friends.values()] # 打印所有描述 for desc in descriptions: print(desc)
关键说明
- 当你执行
for item in 字典时,默认遍历的是字典的键,而非值。 - 要访问嵌套字典的内层字段,需要通过
外层字典[键][内层键]的层级关系获取。
内容的提问来源于stack exchange,提问作者Doll
相关产品推荐
相关产品推荐

