ラムダ関数 は、匿名関数を作成するための構文です。 lambda
キーワードを使用して定義され、通常は短い一時的な関数を作成する際に使用されます。ラムダ関数は1行で定義でき、関数の名前を必要としないため、簡潔に記述できます。
基本構文
lambda 引数: 式
ラムダ関数は任意の数の引数を取ることができますが、ボディは1つの式のみです。この式の評価結果が返り値となります。
使用例
基本的な例
# 通常の関数定義 def add(a, b): return a + b # ラムダ関数を使用した同等の定義 add_lambda = lambda a, b: a + b print(add(3, 5)) # 出力: 8 print(add_lambda(3, 5)) # 出力: 8
リスト内の要素に対する操作
リストの各要素に対して操作を行う場合、map
関数と組み合わせて使用することができます。
numbers = [1, 2, 3, 4, 5] squared = list(map(lambda x: x**2, numbers)) print(squared) # 出力: [1, 4, 9, 16, 25]
フィルタリング
条件に基づいてリストの要素をフィルタリングする場合、filter
関数と組み合わせて使用します。
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] evens = list(filter(lambda x: x % 2 == 0, numbers)) print(evens) # 出力: [2, 4, 6, 8, 10]
ソートのカスタマイズ
リストのソートをカスタマイズする場合、sorted
関数のキーとしてラムダ関数を使用します。
points = [(2, 3), (1, 2), (4, 1), (3, 5)] sorted_points = sorted(points, key=lambda point: point[1]) print(sorted_points) # 出力: [(4, 1), (1, 2), (2, 3), (3, 5)]
参考文献
- W3Schools – Python Lambda
- Real Python – How to Use Python Lambda Functions
- Python.org Documentation – Lambda Expressions
これらの例を通じて、Pythonのラムダ関数の基本的な使い方と、その応用方法を理解することができます。ラムダ関数は簡潔で強力なツールであり、特定の状況で非常に有用です。