Python Lambda
- 前のページ Python ファンクション
- 次のページ Python 配列
lambda 関数は小さな匿名関数です。
lambda 関数は任意の数の引数を受け入れますが、一つの式のみをもちます。
文法
lambda arguments : expression
式を実行して結果を返します:
例
一つの lambda 関数が、引数として渡された数字に 10 を足し、結果を出力します:
x = lambda a : a + 10 print(x(5))
lambda関数は任意の数の引数を受け入れます:
例
引数aとbをかけ合わせて結果をプリントするlambda関数:
x = lambda a, b : a * b print(x(5, 6))
例
引数a、b、cを足し合わせて結果をプリントするlambda関数:
x = lambda a, b, c : a + b + c print(x(5, 6, 2))
なぜLambda関数を使用するべきですか?
lambdaを別の関数内のアノニマス関数として使用すると、lambdaの強力な能力がよりよく示されます。
引数を持つ関数定義があり、その引数は未知の数字に乗られると仮定します:
def myfunc(n): return lambda a : a * n
この関数定義を使用して、常に送信する数字を2倍に増やす関数を作成します:
例
def myfunc(n): return lambda a : a * n mydoubler = myfunc(2) print(mydoubler(11))
または、同じ関数定義を使用して、常に送信する数字を3倍に増やす関数を作成します:
例
def myfunc(n): return lambda a : a * n mytripler = myfunc(3) print(mytripler(11))
または、同じプログラム内で同じ関数定義を使用して2つの関数を生成します:
例
def myfunc(n): return lambda a : a * n mydoubler = myfunc(2) mytripler = myfunc(3) print(mydoubler(11)) print(mytripler(11))
短時間でアノニマス関数が必要な場合は、lambda関数を使用してください。
- 前のページ Python ファンクション
- 次のページ Python 配列