標籤:mod on() 迭代器 *** 相同 func 執行 map函數 class
map()函數主要功能是對批量的元素進行相同的操作時可以大幅度的縮減代碼。
map函數參數詳解:
map(param1,param2,***)
param1:函數名 ,要對批量元素進行處理的function
param2~paramX:可迭代對象,(列表,元祖,迭代器...換句話說:能執行 for x in param:語句的都可以)
map只有兩個參數時:
例如:
1 >>> def function(x):2 ... return x*x3 ... 4 >>> list1 = [1,2,3]5 >>> map(function,list1)6 [1, 4, 9]7 >>>
map參數為多個時:
需要注意的是:map參數的個數 與function參數個數的關係:map參數個數為x個,function個數為x-1個,否則會報錯
例如(出錯的情況):
1 >>> def function(x): 2 ... return x*x 3 ... 4 >>> list1 = [1,2,3] 5 >>> list2 = [4,5,6] 6 >>> list3 = [7,8,9] 7 >>> map(function,list1,list2,list3) 8 Traceback (most recent call last): 9 File "<stdin>", line 1, in <module>10 TypeError: function() takes exactly 1 argument (3 given)
正確的用法應該是:
1 >>> def function(x,y,z):2 ... return x+y+z3 ... 4 >>> list1 = [1,2,3]5 >>> list2 = [4,5,6]6 >>> list3 = [7,8,9]7 >>> map(function,list1,list2,list3)8 [12, 15, 18]
Python 進階 之 map()函數