lambdaとは
defを使った関数定義は、名前を付けてきちんと保存しておく、いわば「常備品」の関数です。それに対してlambdaは、名前を付けずにその場限りで使い捨てる、簡単な関数を1行で作るための書き方です。lambda 引数: 式という形で書き、後で紹介するsorted()やmap()、filter()などに「ちょっとした処理」を渡したいときによく使われます。
defを使った関数定義は、名前を付けてきちんと保存しておく、いわば「常備品」の関数です。それに対してlambdaは、名前を付けずにその場限りで使い捨てる、簡単な関数を1行で作るための書き方です。lambda 引数: 式という形で書き、後で紹介するsorted()やmap()、filter()などに「ちょっとした処理」を渡したいときによく使われます。
add = lambda a, b: a + b
print(add(3, 5))
numbers = [3, 1, 4, 1, 5]
sorted_numbers = sorted(numbers, key=lambda x: -x)
print(sorted_numbers)練習問題:lambdaを使って2つの数の大きい方を返す関数biggerを作り、biggerを使って比較してください。
bigger = lambda a, b: a if a > b else b
print(bigger(3, 7))