Pythonのmap
関数は、リストやタプルなどの各要素に対して指定した関数を適用するための便利なツールです。この記事では、その基本的な使い方を解説します。
map関数の基本的な使い方
map
関数の基本的な使い方は次のとおりです。
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
)を適用しています。
文字列の長さを計算する例
names = ["Alice", "Bob", "Charlie"]
name_lengths = map(len, names)
print(tuple(name_lengths)) # (5, 3, 7)
この例では、names
リストの各要素に対して組み込み関数のlen()
を適用しています。
map関数と内包表記
map
関数とよく似たものに、内包表記というものがあります。内包表記もmap
関数同様、本来for文などのループ処理を使って記述する処理を簡易化するための機能です。
内包表記は、次のような書式で記述します。
[式 for 変数名 in リストやタプルなどのオブジェクト]
先ほどのコードを内包表記で書き直すと、次のようになります。
def multi(i):
return i*2
list1 = [1,2,3,4,5]
print([multi(i) for i in list1])
内包表記の場合は、変数を1つ増やす必要があります。上記のコードでも「変数i」を増やしています。どちらの方が読みやすいかは、一概には言えないでしょう。
まとめ
Pythonのmap
関数は、リストやタプルなどの各要素に対して指定した関数を適用するための便利なツールです。この記事では、その基本的な使い方を解説しました。map
関数を使うことで、ソースコードの可読性を一気に上げることができます。Python初心者の方は、ぜひこの記事を参考にしてください。.