假设我有以下字典列表
t = [{'a': 1.0, 'b': 2.0},
{'a': 3.0, 'b': 4.0},
{'a': 5.0, 'b': 6.0},
{'a': 7.0, 'b': 9.0},
{'a': 9.0, 'b': 0.0}]
是否有一种有效的方法来提取字典中包含的所有值,字典键值为 a
?
到目前为止,我提出了以下解决方案
x = []
for j in t:
x.append(j['a'])
但是,我不喜欢遍历项目,并且正在寻找一种更好的方法来实现这一目标。
原文由 Eric B 发布,翻译遵循 CC BY-SA 4.0 许可协议
您可以使用列表理解:
输出:
由于此解决方案使用 for 循环,因此您可以使用
map
代替:输出:
在性能方面,您更喜欢使用列表综合解决方案而不是地图解决方案。
使用 lambda 或常规函数时略有不同;然而,推导执行需要 1⁄4 的时间。