每个dict键具有值的dicts列表中的最大值和最小值

时间:2016-08-28 00:03:01

标签: python list dictionary max min

我发现的所有答案似乎都让您specify which key想要找到最大/最小值,例如: Finding minimum values in a list of dicts

我有一个词典列表,如:

 [
{
    1:34,
    2:12,
    3:24
},
{
    1:121,
    2:1211,
    3:1891
},
{
    1:191,
    2:8991,
    3:3232
}
]

所以这里它将拉出12和8991。

我想找到这个词典列表中所有值的最大值和最小值。

如何在不必单独指定每个密钥(例如1,2,3)的情况下执行此操作 - 在真实版本中我有20 +。

2 个答案:

答案 0 :(得分:2)

您可以使用列表推导或生成器表达式。

max([max(d.values()) for d in data])

答案 1 :(得分:1)

您可以展平数值,然后找到最小值和最大值:

from itertools import chain

flattened = list(chain(*(d.values() for d in list_of_dicts)))
print(min(flattened))
print(max(flattened))