カテゴリ: 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
Django
Djangoプロジェクトのディレクトリ構造を完全解説!初心者でも迷わないフォルダの見方
New2
Flask
Flask×Flask-SocketIOでチャットアプリを作る流れを初心者向けにやさしく解説
New3
Flask
Flaskアプリの作り方を基礎から学ぼう!初心者が覚えるべき開発の流れとは?
New4
Flask
Flask-WTFでファイルアップロードフォームを完全ガイド!初心者でもわかる画像やPDFのアップロード方法
人気記事
No.1
Java&Spring記事人気No1
Django
Django環境構築の全手順を完全解説!初心者でも迷わないPython・Djangoセットアップガイド
No.2
Java&Spring記事人気No2
Flask
Flask-Loginでユーザー認証を完全ガイド!初心者でもわかるログイン処理の作り方
No.3
Java&Spring記事人気No3
Python
Pythonの文字列を1文字ずつ処理する方法!for文やlist化の活用例
No.4
Java&Spring記事人気No4
Python
PythonでHello Worldを表示するには?初心者向けに最初の1行を実行してみよう
No.5
Java&Spring記事人気No5
Python
Pythonで定数を定義する方法!変更されない変数の書き方と命名ルールを初心者向けに解説
No.6
Java&Spring記事人気No6
Python
Pythonでリストを文字列に変換する方法を完全ガイド!初心者でもわかるjoinの使い方
No.7
Java&Spring記事人気No7
Python
Pythonのmatch文(パターンマッチング)とは?switch文の代替としての使い方をやさしく解説
No.8
Java&Spring記事人気No8
Flask
FlaskアプリをNginx + Gunicornで本番運用する方法!初心者でもわかるデプロイ構成の基本