工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Industrial programming >> Python

Python ラムダ関数: 無名関数の実践ガイド

Python ラムダ関数: 無名関数の実践ガイド

Pythonの匿名ラムダ関数がコードをどう簡素化するかを発見。このガイドでは目的、構文、実用的ユースケースを明確な例で解説します。

動画: Python Lambda

Pythonのラムダ関数とは?

Pythonでは、名前なしで定義される関数を無名関数と呼びます。通常の関数はdefキーワードを使いますが、無名関数はlambdaで宣言。そのためラムダ関数とも呼ばれます。


Pythonでラムダ関数を使う方法

ラムダ関数は簡潔な構文に従います:

Pythonラムダ関数の構文

lambda arguments: expression

任意数の引数を受け取れますが、式は1つのみ。式が評価されその結果が返されます。関数オブジェクトを返すため、関数が必要な場所でどこでも使用可能。


ラムダ関数の例

入力を2倍にするシンプルなラムダ:

# 基本的なラムダ関数を表示
double = lambda x: x * 2
print(double(5))

出力

10

ここではlambda x: x * 2が無名関数を作成。引数xが式x * 2に渡され、評価されて返されます。結果の関数オブジェクトが変数doubleに代入され、通常の関数のように呼び出せます。同等のdef定義:

def double(x):
    return x * 2

Pythonでラムダ関数を使うべき場面

ラムダ関数は、特に高階関数への引数として、すぐに使い捨ての関数が必要なときに輝きます。組み込み関数filter()やmap()とよく組み合わせて簡潔な変換を行います。

filter()との例

filter()関数はイテラブルの各アイテムに述語を適用し、条件を満たすもののみ返します。以下例ではリストから偶数のみ保持:

# リストから偶数をフィルタリング
my_list = [1, 5, 4, 6, 8, 11, 3, 12]
new_list = list(filter(lambda x: (x % 2 == 0), my_list))
print(new_list)

出力

[4, 6, 8, 12]

map()との例

map()関数は各要素に変換を適用し、新しいイテラブルを生成。ここではリストの各要素を2倍に:

# map()で各アイテムを2倍に
my_list = [1, 5, 4, 6, 8, 11, 3, 12]
new_list = list(map(lambda x: x * 2, my_list))
print(new_list)

出力

[2, 10, 8, 12, 16, 22, 6, 24]

Python

  1. Python データ型マスター: 実践ガイド
  2. Python 演算子完全マスター: 包括的ガイド
  3. Python pass文完全マスター: 実践ガイド
  4. Python 関数引数完全マスター: 位置引数・キーワード引数・デフォルト引数
  5. Pythonラムダ関数をマスターする:実例とベストプラクティス
  6. Python abs()関数:数値と複素数の絶対値を計算
  7. Python round()関数を実例で徹底解説
  8. Python range()関数をマスター:基礎から応用まで
  9. Python map()関数をマスター:構文、例、ベストプラクティス
  10. Python yieldをマスター:ジェネレータvs return – 実践ガイド
  11. Python enumerate()をマスター:リスト、タプル、文字列、辞書でインデックス付きループ