2016-08-28 10 views
1

これまでに見つかったすべての回答は、specify which keyのように見えます。 Finding minimum values in a list of dicts各辞書キーの値がある辞書のリストの最大値と最小値

私のようなdictsのリストがありますので、ここでそれは12と8991.

を抜くだろうと私は、このリスト内のすべての値の最大値と最小を見つけたい

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

をdicts。

各キーを別々に指定しなくても(例:1,2,3)、実際のバージョンでは20以上あります。

答えて

1

あなたは、最小値と最大値を見つけ、その後、値を平らにすることができます

from itertools import chain 

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

あなたはリスト内包やジェネレータ式を使用することができます。

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

「[]」を削除することで、理解の代わりにジェネレータを使用できます。 – TigerhawkT3

関連する問題