lambda 無名関数
最終更新:2026-09-22
lambda 無名関数
lambda は無名関数を作成する;単一の式しか書けない。
| カテゴリ | キーワード/文 |
|---|---|
| 種類 | キーワード/文 |
| Python バージョン | all |
📝 構文
lambda args: expression
▶ 例
下のコードを編集し「実行」をクリックすると、出力パネルに結果が表示されます:
実行結果:
10
[3, 2, 1]
🏷️ 関連するキーワード/文
💡 関連するケース
さらに多くのケースは近日公開予定です。
❓ よくある質問
Q`lambda` に複数行のコードを書けますか?
A書けません。`lambda` の本体は単一式だけです。`if`/`else` は条件式(`x if cond else y`)で代用できますが、複数行のロジックは `def` を使いましょう。
Q`lambda` は何に使えますか?
A主に短い関数を引数として渡したい場面で使います。例:`sorted(data, key=lambda x: x[1])`、`map`、`filter`。複雑なロジックに `lambda` は使わないでください——可読性が落ちます。
Q`lambda` で定義した関数と `def` で定義した関数の違いは何ですか?
Aどちらも関数オブジェクトで、挙動は等価です。違いは `lambda` には名前がなく、docstring を書けず、単一式しか書けない点です。`def` の方が汎用的で、標準の選択です。