【Python】map()関数とは?基本的な使い方を解説!サンプルコード付き!

map関数は、リスト等のすべての要素にアクセスして処理を行います。

map関数では、関数とリストを引数として実行することで、新たなリストを作成したり、文字列を作成したりすることができます。
さらに、型名を指定することで要素の型を変更することもできます。

また、lambda式の無名関数と組み合わせると相性がとてよく、実践でとても役に立つので覚えていた方が良いでしょう。

今回はmap関数の以下の内容について解説します。
map()関数とは
map()関数の基本的な使い方
map()関数とlambda式を組み合わせた場合

map()関数とは

map()関数は、特定の反復可能オブジェクト(リスト、タプルなど)の各アイテムに特定の関数を適用した後、結果のマップオブジェクト(イテレータ)を返します。

map()関数の書き方

map()関数の構文は下記となります。

パラメータ

map()関数のパラメータは下記となります。

関数
mapが与えられたイテラブルの各要素を渡す関数です。
オブジェクト
マッピングされる反復可能オブジェクト(リストやタプルなど)です。

戻り値

指定されたイテラブル(リスト、タプルなど)の各アイテムに指定された関数を適用した後の結果のリストを返します。

map()を使ったサンプルコード

map()を使ったサンプルコードを見てみます。

出力結果

[16, 169, 100, 10000]

multiという関数とnumというリストをmap()の引数に指定しています。
そうすることで、numのリスト要素全てをmulti関数で処理するようになり、処理した結果を返します。

map()関数の基本的な使い方

map()関数の基本的な使い方をサンプルコードを使って紹介していきます。

リスト等の要素の型を変換する

map関数の引数である関数に型を指定することで、要素の型を変換することができます。

出力結果

[‘3’, ‘6’, ‘-3’]
[2, -9, 123]
[3.0, 6.0, -3.0]

strによってstring型に、intによって整数型に、floatによって浮動小数点数型に変換されました。

任意の関数を定義する

任意の関数を定義するには引数の関数に関数名を指定します。

例1

出力結果

AイウエOAいうえO

リスト等を作成する

map()関数を使ってリスト等を作成することができます。

出力結果

[2, 4, 6, 8, 10]

(‘キリン’, ‘ ライオン’, ‘ぞう’, ‘とら’)

map()関数を使ってリストとタプルを作成することができました。
型を調べてみるとlistとtupleになっています。

リスト等の要素全てに処理を行う

リスト等の要素全てに処理を行うことができます。

出力結果

100以下です。
100より大きいです。
100より大きいです。
100より小さいです。
100より小さいです。
100より小さいです。
100です

リストの中の要素に対し、100より大きい場合、100より小さい場合、100の場合で条件分岐しています。

数値のリストを結合し、文字列にする場合

数値のリストを結合して文字列にする場合はjoin()メソッドを使用します。

出力結果

100, 200, 300, 24, 56, 234

join()メソッドによって数値のリストから文字列を作成することができました。

lambda式と組み合わせて使用する場合

map関数によって引数を複数指定することができる為、map関数とlambda式の組み合わせは非常に相性が良いです。

lambda式について詳しく知りたい場合は【Python】lambda(ラムダ)式の使い方を徹底解説!def(関数)とのコードを比較!をご参照ください。

出力結果

[‘ライオン’, ‘パンダ’, ‘キリン’, ‘コアラ’]
[13, 90, 201, 356]

Writer
壷井

壷井

株式会社flyhawkの壷井です。フライテックメディア事業部でのメディア運営・ライター業務なども担当。愛機はMac Book AirとThinkPad。好きな言語:swift、JS系(Node.js等)。好きなサーバー:AWS。受託開発やプログラミングスクールの運営をしております。ご気軽にお問い合わせください。

最新の案件情報

フリーランスエンジニアの案件探し