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

Pythonのラムダ式とmap関数を使ったリスト変換の完全ガイド!初心者でもわかる解説

Pythonのラムダ式とmap関数を使ったリスト変換の例
Pythonのラムダ式とmap関数を使ったリスト変換の例

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

生徒

「Pythonでたくさんの数字や文字を一気に変換する方法ってありますか?」

先生

「はい、Pythonではラムダ式とmap関数を組み合わせることで、リストの中身を一括変換できますよ。」

生徒

「ラムダ式とmap関数…名前だけ聞くと難しそうですね。どうやって使うんですか?」

先生

「心配いりません。とてもシンプルな考え方なので、実際の例を見ながら一緒に学んでいきましょう!」

1. ラムダ式とは?

1. ラムダ式とは?
1. ラムダ式とは?

Pythonのラムダ式は、「一行で書ける簡単な関数」のようなものです。
普通の関数はdefを使って作りますが、ラムダ式はlambdaというキーワードを使い、その場ですぐに作れます。

たとえば、数字を2倍にする関数を作る場合、通常は次のように書きます。


def double(x):
    return x * 2

これをラムダ式で書くと、わずか1行になります。


lambda x: x * 2

lambda 引数: 実行する処理」という書き方が基本形です。
関数に名前をつけずにその場で使えるので、簡単な変換処理に便利です。

2. map関数とは?

2. map関数とは?
2. map関数とは?

map関数は、「リストやタプルの各要素に同じ処理を一括で適用する」ための関数です。
map関数の書き方は次のとおりです。


map(関数, データ)

第一引数には適用する関数(ラムダ式や通常の関数)、第二引数には処理したいリストなどを入れます。

例えば、[1, 2, 3]の各数字を2倍にしたいときは、次のように書きます。


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

[2, 4, 6]

このように、map関数は「全員に同じ作業をしてもらう指示書」のようなものです。

3. ラムダ式とmap関数の組み合わせ

3. ラムダ式とmap関数の組み合わせ
3. ラムダ式とmap関数の組み合わせ

ラムダ式とmap関数を組み合わせると、リスト変換がとても簡単になります。

例えば、リストの中の数字をすべて3乗(xの3乗はx * x * x)に変換する場合は、次のように書きます。


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

[1, 8, 27, 64]

このコードでは、lambda x: x ** 3が「数字を3乗にする処理」を表しており、map関数がその処理をリスト内のすべての数字に適用しています。

4. 文字列変換の例

4. 文字列変換の例
4. 文字列変換の例

map関数とラムダ式は数字だけでなく、文字列の変換にも使えます。
例えば、すべての文字列を大文字にする場合は次のようにします。


words = ["python", "lambda", "map"]
result = map(lambda s: s.upper(), words)
print(list(result))

['PYTHON', 'LAMBDA', 'MAP']

この場合、s.upper()は文字列を大文字に変換するPythonのメソッドです。

5. 使いどころと注意点

5. 使いどころと注意点
5. 使いどころと注意点

ラムダ式とmap関数は、短く書けて見た目がスッキリするというメリットがあります。
特に「一度きりの簡単な処理」に向いています。

  • リストやタプルの全要素をまとめて変換するとき
  • 処理が短く、関数をわざわざ定義するほどではないとき
  • 可読性を保ちながらコードを簡潔にしたいとき

ただし、複雑な処理をラムダ式に書くと逆に読みにくくなるので、そういう場合はdefで関数を作ったほうが良いです。

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