組み込み関数map()関数を使用した変換処理を行う – 【Python】

組み込み関数map()関数を使用した変換処理を行う – 【Python】

Pythonでは組み込み関数でmap()関数が用意されています。

引数2つ

第一引数に変換処理を行う関数、第二引数以降はイテレータを指定します。

イテレータの要素に対して2倍に変換するmap()関数です。

def double(x):
    return x * 2

num = [1, 2, 3, 4, 5]

result = map(double, num)
print(result) # <map object at 0x7f2b34534040> mapオブジェクトが返ってくる
print(list(result)) # [2, 4, 6, 8, 10]

これをリスト内包表記に書き換えます。

def double(x):
  return x * 2

num = [1, 2, 3, 4, 5]
result = [double(i) for i in num]
print(result)# [2, 4, 6, 8, 10]

引数3つ

map()の引数が3つあるパターンです。

第一引数に変換処理を行う関数、第二引数、第三引数はイテレータを指定します。

イテレータの要素を加算して返す(変換)map()関数です。

def add(x, y):
  return x + y

num1 = [1, 2, 3, 4, 5]
num2 = [1, 2, 3, 4, 5]

result = map(add, num1, num2)
print(list(result)) # [2, 4, 6, 8, 10]

これをリスト内包表記に書き換えます。

def add(x, y):
  return x + y

num1 = [1, 2, 3, 4, 5]
num2 = [1, 2, 3, 4, 5]

result = [add(x, y) for x, y in zip(num1, num2)]
print(result) # [2, 4, 6, 8, 10]

株式会社CONFRAGE ITソリューション事業部をもっと見る

今すぐ購読し、続きを読んで、すべてのアーカイブにアクセスしましょう。

続きを読む

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