Python の map でリストに関数を適用しよう
数を 2 乗する関数 square を例に、Python の map について考える。
def square(x):
return x * x
m = 5
n = square(m)
print(n)
# 25
この平凡な関数をリストに適用したいとする。つまり
としたい。これは map で実現される。
def square(x):
return x * x
a = [1, 2, 3, 4]
b = list(map(square, a))
print(b)
# [1, 4, 9, 16]
list に map を入れ、その中に適用したい関数、適用したいリストを入れる。
例:文字列のリストから、それぞれの文字数を出力するコード
a = ['apple', 'mac', 'google', 'e', '']
b = list(map(len, a))
print(b)
# [5, 3, 6, 1, 0]
新しい関数を作る必要はない。文字列のカウントは len であり、それを map に入れるだけである。