python - 访问嵌套字典中不同字典的相同键的所有值
问题描述
我有一个嵌套字典:
d = { 'wing': {'name': 'Ali', 'age': '19'},
'scrumHalf': {'name': 'Bob', 'age': '25'},
'flyHalf': {'name': 'Sam', 'age': '43'},
'prop': {'name': 'rob', 'age': '33'}}
我想提取值age
仅用于生成列表
[19, 25, 43, 33]
我想使用 for 循环来做到这一点,并且尽可能天真,因为我通常觉得这最容易理解。
我已经设法使用 for 循环打印所有键:
for i in d:
print i
for j in d[i]:
print j
但是当我尝试编辑它以打印值时,我得到了错误
NameError: name 'value' is not defined
。我如何才能'value'
表示附加到键的值?
这是我编辑的版本
for i in d:
print (i[value])
for j in d[i]:
print (j[value])
我正在使用 python 2.7
解决方案
您可以借助以下方法访问 dict 中的值values()
:
[i['age'] for i in d.values()]
# ['19', '25', '43', '33']
推荐阅读
- tarantool - 性能:get+[delete if exists] vs delete
- python - 对于每个元素,如何在 mxn 矩阵中获取最近的 r 元素
- pytorch - 数据集中每类的图像数量,PyTorch
- spring-boot - 使用 h2 In-Memory Database 和 Hibernate Spatial 在 Spring Boot Application 中找不到函数“ST_WITHIN”
- c - 需要请教pset4 恢复。尝试了一个星期,仍然出现分段错误
- algorithm - 有 3 种方法对其平方进行拆分以获得除数之和的最小数 N 是 N 是多少?
- python - 覆盖 __new__ 以返回初始化对象时如何使用上下文
- visual-c++ - 如何在 Visual std C++ 上编写一些公式(在“类”类型中)
- amazon-web-services - Fargate 的公共 IP 上的 HTTPS - 可能吗?
- javascript - 如何在javascript中使用图像的src更改标识符的url?