私はこのようなタプルのリストを反復処理しようとしています:座標タプルのリストから最小値を選択する
[(0, 0.0083553666846612491), (1, 0.0054999681509501821)]
とタプルの右側の最小値を検索し、添付を保存左辺値を変数に代入する。
この問題については、どうすればよいでしょうか?
私はこのようなタプルのリストを反復処理しようとしています:座標タプルのリストから最小値を選択する
[(0, 0.0083553666846612491), (1, 0.0054999681509501821)]
とタプルの右側の最小値を検索し、添付を保存左辺値を変数に代入する。
この問題については、どうすればよいでしょうか?
は、あなたが最も小さい第二の値を持つタプルを見つけるためにmin()
関数にkey
引数を使用することができます。
>>> l = [(0, 0.0083553666846612491), (1, 0.0054999681509501821)]
>>> smallest = min(l, key=lambda x: x[1])[0]
>>> smallest
1
ここ
ラムダ式は、各タプルの2つ目の項目を選択するために使用され、min
を、その値を使用していますその比較において。 min()
はフルタプルを返します。したがって、[0]
を使用して最初の項目を抽出できます。あなたはまた、operator.itemgetter
を使用することができます
:
>>> from operator import itemgetter
>>> smallest = min(l, key=itemgetter(1))[0]
>>> smallest
1
これは動作するはずです:
min_tuple = min(your_list, key=lambda item: item[1])
は、だから我々はあなたが後半だけで3分のようなものでしたタプルcomparition
ための方法を提供しています。通常、私は両方の答えをupvoteだろうが、[mhawke](http://stackoverflow.com/a/40456054/1218980)はあなたが何も提供していない間にはるかに詳細を提供した。 1ライナーだけでなく、提案しているソリューションの説明を提供することを強くお勧めします。 –
私はすべての手紙の数(電話でエッセイを書くのが好き)がいる電話アプリを使用していました。提案ありがとう。 – woockashek
ええ、電話で解答を書くことは最高のものとはほど遠いです。 –