スポンサーリンク

pythonで辞書内のリストの要素の最大、最小値の取得方法

プログラミング
OpenClipart-Vectors / Pixabay
スポンサーリンク

python3.5系です。

pythonでの、辞書の中にリスト(タプル)が値として入っていて、各リストのi番目の要素同士の比較をして最大、最小値を求めるプログラムです。

dict={“banana”:[23,44,55,66],”enpitu”:[11,43,55,66],”haramaki”:[44,33,55,66]}

みたいな辞書があった時、この辞書の中の1番目の値の最大値は、haramakiの44みたいなのを求める処理です。

コード

 dict={"banana":[23,44,55,66],"enpitu":[11,43,55,66],"haramaki":[44,33,55,66]}
#i番目の要素の最大値を取得する(今回はi=0~3)
a=max(dict.items(), key= lambda x:x[1][i])

#a[0]で最大値となるvalueの値を取得
print(a[0])

#a[1][i]で最大値となるkeyの値を取得
print(a[1][i])

解説

a=max(dict.items(), key= lambda x:x[1][i])

このkeyの部分が、dictの1番目の要素のi番目の要素をもとに最大値を見つけるという条件です。

ちなみに、dict[0]=”banana”  ,dict[1]=[23,44,55,66]とはなりません。keyの中でしか使えないです(間違ってたらごめんなさい)

で、i=0とすると

a=(“haramaki”, [44,33,55,66])という形でaが返ってくるので、

a[0]でkeyの値、a[1][0]で44の値がとれます。

最小値を求めたい場合は、

maxをminにすればおkです。

コメント

タイトルとURLをコピーしました