如何从键名不同的嵌套字典中提取指定键对应的值?
提取嵌套字典中统一键对应的数值
你的核心需求是从不同键名的子字典里,提取它们共同键number对应的数值,下面是具体解决方法:
方法一:列表推导式(简洁高效)
直接遍历原字典的所有子字典(通过x.values()获取),取出每个子字典里的number值:
x = {"stringdict1":{"number":56},"stringdictx":{"number":48}} # 提取所有数值到列表 nums = [sub["number"] for sub in x.values()] # 按你要的格式输出 print(", ".join(map(str, nums))) # 输出:56, 48
方法二:普通循环(更直观)
如果觉得列表推导式不好理解,用普通for循环也能实现:
x = {"stringdict1":{"number":56},"stringdictx":{"number":48}} result = [] for sub_dict in x.values(): result.append(sub_dict["number"]) print(", ".join(map(str, result))) # 输出:56, 48
你原来代码的问题
你写的for numbers in dict[:]:是错误的,原因是:
dict是Python内置的字典类,不是你定义的变量x,不能直接用来遍历你的数据- 字典不属于序列类型,不支持
[:]切片操作,要获取所有子字典,应该用x.values()方法
内容的提问来源于stack exchange,提问作者smet for
相关产品推荐
相关产品推荐

