Pythonのタプルのリストで最大値を持つ最初の要素を取得します
タプルのリストがあります。その中で最大値であったタプルを見つける必要があります。ただし、複数のタプルが同じ値を持つ場合は、最大値を持つ最初のタプルが必要です。
itemgetterとmaxを使用
itemgetter(1)を使用して、インデックス位置1からすべての値を取得し、max関数を適用して最大値のアイテムを取得します。ただし、複数の結果が返される場合は、インデックスゼロを適用して、最大要素を含む最初のタプルを取得します。
例
from operator import itemgetter # initializing list listA = [('Mon', 3), ('Tue', 20), ('Wed', 9)] # Given list print("Given list : \n" ,listA) # using max() and itemgetter() res = max(listA, key=itemgetter(1))[0] # printing result print("Day with maximum score is : \n",res)
出力
上記のコードを実行すると、次の結果が得られます-
Given list : [('Mon', 3), ('Tue', 20), ('Wed', 9)] Day with maximum score is : Tue
maxとlambdaを使用
ラムダ関数を使用してインデックス位置1の要素を取得し、max関数を適用します。次に、インデックス位置0を適用して、複数の一致のうち最初の一致を取得し、最終結果を取得します。
例
# initializing list listA = [('Mon', 3), ('Tue', 20), ('Wed', 9)] # Given list print("Given list : \n" ,listA) # using max() and lambda res = max(listA, key = lambda i : i[1])[0] # printing result print("Day with maximum score is : \n",res)
出力
上記のコードを実行すると、次の結果が得られます-
Given list : [('Mon', 3), ('Tue', 20), ('Wed', 9)] Day with maximum score is : Tue
並べ替えあり
このアプローチでは、ラムダ関数を適用するときに、真の条件に等しい逆のソートされた関数を使用します。
例
# initializing list listA = [('Mon', 3), ('Tue', 20), ('Wed', 9)] # Given list print("Given list : \n" ,listA) # using sorted() and lambda res = sorted(listA, key = lambda i: i[1], reverse = True)[0][0] # printing result print("Day with maximum score is : \n",res)
出力
上記のコードを実行すると、次の結果が得られます-
Given list : [('Mon', 3), ('Tue', 20), ('Wed', 9)] Day with maximum score is : Tue
-
Python-Kより大きい最初の要素のインデックスを取得します
Pythonリストの項目の値は、必ずしもソートされた順序である必要はありません。さらに、特定の値よりも大きい特定の値のみに関心がある場合もあります。この記事では、どのように入手できるかを見ていきます 列挙の使用 列挙を使用して、リスト内の要素のインデックスと値の両方を取得します。次に、大なり記号を適用して、条件が満たされる最初の要素のみを取得します。次の関数は、各リスト要素を1つずつ調べます。 例 List = [21,10,24,40.5,11] print("Given list: " + str(List)) #Using next() + enumerate()
-
最大値を持つPythonリストから要素を見つける方法は?
最大値の要素を見つけるには、リストを引数としてmax()関数を呼び出す必要があります。 max関数は、リストを繰り返し処理して、最後に到達するまで検出した最大値を追跡します。次に、この値を返します。 例 my_list = [2, 3, 1, 5, -1] print(max(my_list)) 出力 これにより、出力が得られます- 5 インデックスとmax要素が発生したすべての場所も必要な場合は、enumerateメソッドを使用できます。 enumerateメソッドは、最初のインデックスにインデックスがあり、2番目にオブジェクトがあるオブジェクトのタプルを作成します。 例 my_list