max()
関数はkey
引数を受け取ることができ、この引数には各要素に適用される関数を指定することができます。また、key
引数にはlambda式を使用することもできます。
以下に、max()
関数をkey
引数とlambda式を使用して最大値を見つける例をいくつか示します。
例1: リストの中で最大の整数を見つける
numbers = [3, 9, 1, 6, 2]
max_number = max(numbers, key=lambda x: x)
print(max_number) # 出力: 9
例2: 文字列の中で最も長い単語を見つける
words = ["apple", "banana", "cherry", "date"]
longest_word = max(words, key=lambda word: len(word))
print(longest_word) # 出力: "banana"
例3: 辞書の中で最大の値を持つキーを見つける
scores = {"Alice": 85, "Bob": 72, "Charlie": 90, "Dave": 78}
highest_score_name = max(scores, key=lambda name: scores[name])
print(highest_score_name) # 出力: "Charlie"
これらの例では、key
引数に指定されたlambda式が各要素に適用され、その結果に基づいて最大値が決定されます。lambda式では、要素を受け取り、比較に使用する値を返すように定義されています。
このように、key
引数とlambda式を使用することで、max()
関数をより柔軟に使用することができます。