カテゴリ: Python 更新日: 2025/11/18

Pythonのラムダ式の書き方と構文を初心者向けに解説

Pythonのラムダ式の書き方と構文を初心者向けに解説
Pythonのラムダ式の書き方と構文を初心者向けに解説

先生と生徒の会話形式で理解しよう

生徒

「Pythonで短く関数を書ける方法ってありますか?」

先生

「はい、あります。lambda(ラムダ式)を使えば、名前を付けずに一行で関数を書けますよ。」

生徒

「名前を付けない関数って、どういうことですか?」

先生

「それは“無名関数”と呼ばれるもので、ちょっとした処理を簡単に書くのに便利です。今から書き方と構文を説明しますね!」

1. ラムダ式(lambda)とは?

1. ラムダ式(lambda)とは?
1. ラムダ式(lambda)とは?

Pythonのラムダ式とは、無名関数(名前を付けない関数)を作るための書き方です。通常、関数はdefを使って作りますが、短い処理のためにわざわざ名前を付けるのは面倒な場合があります。

そんなとき、lambdaを使うと簡潔に1行で関数が書けます。

例えば、「数字を2倍にする」処理を関数で書く場合、通常の方法はこうです。


def double(x):
    return x * 2

print(double(5))

10

ラムダ式を使うと、こう書けます。


double = lambda x: x * 2
print(double(5))

10

2. ラムダ式の基本構文

2. ラムダ式の基本構文
2. ラムダ式の基本構文

ラムダ式の構文は次の通りです。


lambda 引数1, 引数2, ... : 戻り値となる式

ポイントは以下の通りです。

  • lambdaの後に引数を書きます(引数が不要な場合は空でもOK)
  • :の右側に処理(式)を書きます
  • 処理は1行で書く必要があります(複数行は不可)

3. 普通の関数との違い

3. 普通の関数との違い
3. 普通の関数との違い

通常の関数とラムダ式の違いを比較します。


# 通常の関数
def add(a, b):
    return a + b

# ラムダ式
add_lambda = lambda a, b: a + b

print(add(3, 4))
print(add_lambda(3, 4))

7
7

結果は同じですが、ラムダ式は短く書ける分、簡単な処理専用にするのがおすすめです。

4. ラムダ式の活用例

4. ラムダ式の活用例
4. ラムダ式の活用例

ラムダ式は特に関数を引数として渡すときに便利です。

4-1. ソートのキーに使う


data = [(1, "apple"), (3, "banana"), (2, "cherry")]
sorted_data = sorted(data, key=lambda x: x[1])
print(sorted_data)

[(1, 'apple'), (3, 'banana'), (2, 'cherry')]

4-2. filterで条件抽出


numbers = [1, 2, 3, 4, 5, 6]
even_numbers = list(filter(lambda x: x % 2 == 0, numbers))
print(even_numbers)

[2, 4, 6]

4-3. mapでデータ変換


numbers = [1, 2, 3]
doubled = list(map(lambda x: x * 2, numbers))
print(doubled)

[2, 4, 6]

5. ラムダ式を使うときの注意点

5. ラムダ式を使うときの注意点
5. ラムダ式を使うときの注意点

ラムダ式は便利ですが、以下の点に注意しましょう。

  • 複雑な処理には向かない(1行しか書けないため)
  • 可読性(読みやすさ)が下がる場合がある
  • デバッグ時に関数名がないため、エラー箇所がわかりにくい

そのため、短く簡単な処理 → ラムダ式長く複雑な処理 → 通常の関数という使い分けをおすすめします。

カテゴリの一覧へ
新着記事
New1
Flask
Flaskで非同期フォーム送信(Ajax POST)を実装する方法を解説!初心者でもわかるステップ解説
New2
Python
Pythonで定数を定義する方法!変更されない変数の書き方と命名ルールを初心者向けに解説
New3
Python
PythonでMySQLに接続する方法!pymysqlの基本的な使い方
New4
Flask
FlaskのURLルールとは?ルーティングの基本と動的URLの作り方を解説
人気記事
No.1
Java&Spring記事人気No1
Python
Pythonとは何か?初心者向けにできること・特徴・インストール手順までやさしく解説
No.2
Java&Spring記事人気No2
Flask
Flaskでデータベースを使う基本!SQLAlchemyの導入方法をやさしく解説
No.3
Java&Spring記事人気No3
Python
Pythonでリストの要素を検索・取得する方法!index()やin演算子の活用法
No.4
Java&Spring記事人気No4
Python
Pythonプログラムの書き方を基礎から学ぼう!初心者が覚えるべき文法とは?
No.5
Java&Spring記事人気No5
Python
Pythonで仮想環境(venv)を作る方法!初心者向けに環境構築をステップ解説
No.6
Java&Spring記事人気No6
Python
Pythonのインストール方法まとめ!Windows・Mac・Linux別にステップ解説
No.7
Java&Spring記事人気No7
Flask
Flaskアプリの環境変数をクラウドで安全に設定する方法!初心者のための完全ガイド
No.8
Java&Spring記事人気No8
Flask
Flaskでクラウド上のメッセージキュー(SQS/PubSub)を扱う完全ガイド!初心者向け解説