Pythonには、lambda(ラムダ)式という特殊な構文があります。この構文は、一行で簡単な関数を定義するためのもので、特に一時的な関数やシンプルな操作を行う関数に対して有用です。
lambda式の基本的な書き方
lambda式は、lambda 引数: 返り値
という形で書きます。以下に、引数が一つ、二つ、そして三つのラムダ関数をそれぞれ定義した例を示します。
# 引数が一つのラムダ関数
f = lambda x: x * 2
print(f(3)) # 出力: 6
# 引数が二つのラムダ関数
add = lambda x, y: x + y
print(add(3, 4)) # 出力: 7
# 引数が三つのラムダ関数
calc = lambda x, y, z: (x + y) * z
print(calc(1, 2, 3)) # 出力: 9
lambda式でfor文処理を実装する方法
例えば、様々な商品の価格を抜き出したリストがあり、そのリストに対して、消費税を上乗せした価格情報を取得する処理を実装する場合、商品価格のリストをfor文を使用して以下のように実装することができます。
prices = [3000,2500,10500,4300]
paymentList = []
for price in prices:
paymentList.append(price * 1.08)
print(paymentList) # 出力: [3240.0, 2700.0, 11340.0, 4644.0]
同じ処理内容を今度はlambda式を利用して実装します。その際に、合わせて利用する関数がmap関数です。map関数は第一引数に処理内容、第二引数に処理対象のリストを指定します。
lambda式と通常の関数の違い
通常の関数(defを使用した関数)は名前を持ち、より複雑な処理や複数の操作を含むことができます。また、文(if文やfor文など)を含むことも可能です。一方、ラムダ関数はそのシンプルさにありますが、一つの式しか書くことができないという制限があります。
以上、Pythonのlambda式についての基本的な説明と使用例を紹介しました。この記事が、lambda式について正しく理解し、必要な場面で使いこなすことができるようになる一助となれば幸いです。.