Pythonのmap()関数でlambda()関数を使用する

Pythonのmap()関数でlambda()関数を使用してみます。

■Python

Google Colaboratory(Google Colab),Python3.7.10

■map()関数でlambda()関数を使用する

では、早速map()関数でlambda()関数を使用してみます。

■コード

test_list = [1,2,3,4,5,6,7,8,9,10]

add_number = list(map(lambda x:x+5,test_list))

print(add_number)

今回は、test_listというリストを角括弧”[ ]”を使用し定義します。リスト内には、要素(数値)を格納します。

格納後、add_numberという変数を定義し、その中でmap()関数を使用します。関数の括弧内の第1のパラメータ,引数では、lambda(ラムダ)式を渡します。lambda(ラムダ)式では、引数,パラメータをxとし、xに代数演算子”+(プラス)”を用いて「5」を加算(足し算)します。

map()関数の第2の引数,パラメータでは、test_listを渡します。これで、test_listというリスト内の全ての要素に対して、lambda(ラムダ)式の処理が行われます。処理後に、list()関数を用いて、新しいリストを作成、add_number変数に格納。

最後に、add_number変数内の情報をprint()関数で出力します。

■実行・検証

スクリプトを作成後、このスクリプトを実行してみます。

実行してみると、test_listというリスト内の要素(数値)に対して、lambda(ラムダ)式の処理が行われ、処理されたものが新しいリストとして作成され、作成されたリストをprint()関数で出力させることができました。

■2つのリスト(反復可能オブジェクト)でmap()関数とlambda()関数を使用する

では、次に2つのリスト(反復可能オブジェクト)でmap()関数とlambda()関数を使用してみます。map()関数は、複数のリスト(反復可能オブジェクト)を引数,パラメータとして渡すことができます。

■コード

test_list1 = [1,2,3,4,5,6,7,8,9,10]
test_list2 = [11,12,13,14,15,16,17,18,19,20]

add_number = list(map(lambda x,y:x+y,test_list1,test_list2))

print(add_number)

test_list1とtest_list2というリストを角括弧”[ ]”を使用し定義します。リスト内には、それぞれ要素(数値)を格納します。

格納後、add_numberという変数を定義し、その中でmap()関数を使用します。関数の括弧内の第1のパラメータ,引数では、lambda(ラムダ)式を渡します。lambda(ラムダ)式では、引数,パラメータをxとyの2つ設定します。xに代数演算子”+(プラス)”を用いてyを加算(足し算)します。

map()関数の第1の引数,パラメータ以降では、test_list1とtest_list2を渡します。これで、test_list1とtest_list2のリスト内の全ての要素に対して、lambda(ラムダ)式の処理が行われます。処理後に、list()関数を用いて、新しいリストを作成、add_number変数に格納。

add_number変数の情報をprint()関数で出力します。

■実行・検証

スクリプトを作成後、このスクリプトを実行してみます。

実行してみると、map()関数に、2つのリスト(反復可能オブジェクト)を引数,パラメータとして渡してみましたが、lambda(ラムダ)式の処理が実行され、2つのリスト内の数値が加算(足し算)された新しいリストを出力させることができました。

コメント

タイトルとURLをコピーしました