Pythonのmap()
関数は、リストやタプルなどのシーケンス型の各要素に対して指定した関数を適用し、その結果を新しいイテレータとして返す便利な組み込み関数です。
map()関数の基本的な使い方
map()
関数の基本的な使い方は以下の通りです。
iterator = map(function, iterable)
ここで、function
は適用する関数、iterable
は適用する要素のシーケンス(リストやタプルなど)を指します。
例えば、リストの各要素を2倍にする場合は以下のようになります。
numbers = [1, 2, 3, 4, 5]
doubled_numbers = map(lambda x: x * 2, numbers)
print(list(doubled_numbers)) # [2, 4, 6, 8, 10]
この例では、numbers
リストの各要素に対してラムダ式(lambda x: x * 2
)を適用しています。map()
関数は、各要素に対して指定された関数を適用し、その結果を含む新しいイテレータオブジェクト(doubled_numbers
)を生成します。
map()関数と複数のシーケンス
map()
関数は複数のシーケンスを組み合わせて処理する際にも便利です。対応する要素同士を1つずつ取り出して関数に渡し、結果を新しいイテレータオブジェクトとして返します。
numbers = [1, 2, 3]
squares = [4, 5, 6]
sums = map(lambda x, y: x + y, numbers, squares)
print(list(sums)) # [5, 7, 9]
この例では、numbers
とsquares
という2つのリストがあります。map()
関数には、2つの引数を受け取るラムダ式(lambda x, y: x + y
)が使用されています。このラムダ式は、numbers
とsquares
の対応する要素を足し合わせる処理を表しています。
以上がPythonのmap()
関数とリストの基本的な使い方についての説明です。この関数を使うことで、for文などの反復処理を簡潔に記述することができ、コードが読みやすくなります。