カテゴリ: Python 更新日: 2025/12/01

Pythonのラムダ式と組み合わせる便利な関数まとめ!初心者でもわかる使い方

Pythonのラムダ式と組み合わせる便利な関数まとめ
Pythonのラムダ式と組み合わせる便利な関数まとめ

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

生徒

「先生、Pythonのラムダ式ってよく聞くけど、どんな関数と一緒に使うと便利なんですか?」

先生

「いい質問ですね。ラムダ式は小さな関数をさっと作れるので、Pythonに元からある便利な関数と組み合わせると、とても役立ちますよ。代表的な関数をいくつか紹介しましょう。」

生徒

「ぜひ教えてください!」

先生

「では、順番に見ていきましょう。」

1. map関数とラムダ式

1. map関数とラムダ式
1. map関数とラムダ式

map関数は、リストやタプルのすべての要素に同じ処理をしたいときに使います。mapの中にラムダ式を入れると、処理を簡単に指定できます。

例えば、数字リストのすべてに2をかけたい場合は、


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

こうすると、[2, 4, 6, 8, 10]が出力されます。mapは、すべての要素に順番にラムダ式の処理を適用してくれます。

2. filter関数とラムダ式

2. filter関数とラムダ式
2. filter関数とラムダ式

filter関数は、条件に合う要素だけを取り出したいときに使います。ラムダ式で条件を指定することが多いです。

例えば、リストの中から偶数だけを取り出したい場合は、


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

結果は[2, 4, 6]となり、偶数だけ抽出できます。

3. sorted関数とラムダ式

3. sorted関数とラムダ式
3. sorted関数とラムダ式

sortedはリストやタプルを並べ替える関数です。ラムダ式を使って、並べ替えの基準を自分で指定できます。

例えば、リストの中のタプルを2番目の値でソートしたい場合は、


items = [(1, 3), (2, 1), (3, 2)]
sorted_items = sorted(items, key=lambda x: x[1])
print(sorted_items)

出力は[(2, 1), (3, 2), (1, 3)]となり、2番目の数字を基準に並べ替えられます。

4. reduce関数とラムダ式

4. reduce関数とラムダ式
4. reduce関数とラムダ式

reduceはリストの要素を順番にまとめて1つの値にするときに使います。Python 3ではfunctoolsモジュールから使います。

例えば、リストの合計を計算するとき、


from functools import reduce
numbers = [1, 2, 3, 4, 5]
total = reduce(lambda x, y: x + y, numbers)
print(total)

結果は15です。reduceはリストの左から順にラムダ式を使って計算をまとめていきます。

5. any関数とall関数とラムダ式

5. any関数とall関数とラムダ式
5. any関数とall関数とラムダ式

anyは「条件を満たすものが一つでもあればTrue」を返します。allは「すべて満たせばTrue」です。リストの要素をラムダ式でチェックしてから使うことも多いです。

例えば、リストに偶数があるか調べるには、


numbers = [1, 3, 5, 7, 8]
has_even = any(map(lambda x: x % 2 == 0, numbers))
print(has_even)  # True

すべてが正の数か調べるには、


numbers = [1, 3, 5, 7, 8]
all_positive = all(map(lambda x: x > 0, numbers))
print(all_positive)  # True

6. ラムダ式を使うときのポイント

6. ラムダ式を使うときのポイント
6. ラムダ式を使うときのポイント
  • 簡単な処理を一行で書きたいときに便利
  • 複雑な処理は普通の関数defで書いたほうがわかりやすい
  • 読みやすさを考えて、無理に使わない
  • 慣れるまでは例を見ながら練習する

7. ラムダ式と一緒に使うと便利なPython関数一覧

7. ラムダ式と一緒に使うと便利なPython関数一覧
7. ラムダ式と一緒に使うと便利なPython関数一覧

ここまで紹介した以外にも、ラムダ式と相性の良い関数はたくさんあります。主に「リストの要素に対して処理をする」関数です。

  • map():すべての要素に同じ処理をする
  • filter():条件に合う要素だけを取り出す
  • sorted():好きな条件で並べ替える
  • reduce():要素をひとつにまとめる
  • any():条件を満たすものがあるかチェック
  • all():すべての条件を満たすかチェック

これらの関数を上手に使うと、Pythonのコードがすっきり短く書けて、処理もわかりやすくなります。

カテゴリの一覧へ
新着記事
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
Flask
Flaskアプリの環境変数をクラウドで安全に設定する方法!初心者のための完全ガイド
No.6
Java&Spring記事人気No6
Python
Pythonで仮想環境(venv)を作る方法!初心者向けに環境構築をステップ解説
No.7
Java&Spring記事人気No7
Python
Pythonのインストール方法まとめ!Windows・Mac・Linux別にステップ解説
No.8
Java&Spring記事人気No8
Flask
Flaskでクラウド上のメッセージキュー(SQS/PubSub)を扱う完全ガイド!初心者向け解説