シーケンスに対して順に個々のデータを操作するにはmap関数が使える。
たとえば、
>>> L = [1,2,3,4,5]
>>> L
[1, 2, 3, 4, 5]
>>>
といったリストがあったとする。
各要素に1を足したリストがほしいとする。
そういう場合には、
>>> map((lambda x: x+1),L)
[2, 3, 4, 5, 6]
>>>
というように第一引数にそれぞれの要素に対する処理を渡し、繰り返し処理をさせることができる。
また、第二引数以降にもうひとつ引数を足すと、
>>> map((lambda x,y: x*y),[1,2,3,4],[2,3,4,5])
[2, 6, 12, 20]
>>>
なんてこともできる。
これは第二引数と第三引数の各要素をひとつづつ、lambdaで定義した関数に引数として渡し、計算結果を最終結果として返している。
おしまい。
.
0 コメント:
コメントを投稿