字典列表中的最大值和最小值,其中每个字典键都有一个值

Max and min value in list of dicts where each dict key has a value

我找到的所有答案似乎都让你不得不 specify which key you want to find the max/min for e.g. 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+。

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

from itertools import chain

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

您可以使用列表理解或生成器表达式。

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