標籤:python map map函數 map說明
1. 說明
python中的map函數應用於每一個可迭代的項,返回的是一個結果list。如果有其他的可迭代參數傳進來,map函數則會把每一個參數都以相應的處理函數進行迭代處理。map()函數接收兩個參數,一個是函數,一個是序列,map將傳入的函數依次作用到序列的每個元素,並把結果作為新的list返回。
map(function, iterable, …)
2. 舉例
- 有一個list,
L = [1,2,3,4,5,6,7,8]
,我們要將f(x)=x^2作用於這個list上,那麼我們可以使用map函數處理。
>>> L = [1,2,3,4,]
>>> def pow2(x):
... return x*x
...
>>> map(pow2,L)
[1, 4, 9, 16]
- 如果給出了額外的可迭代參數,則對每個可迭代參數中的元素同時的應用‘function’。
>>> def mknum(a,b,c):... return a*10000+b*100+c... >>> l1 = [10,20,30]>>> l2 = [40,50,60]>>> l3 = [70,80,90]>>> map(mknum,l1,l2,l3)[104070, 205080, 306090]
結果表明,map函數對每個list取相同的下標做了mknum函數處理。
3. 小任務
利用map()函數,把使用者輸入的不規範的英文名字,變為首字母大寫,其他小寫規範名字。輸入:[‘adam’, ‘LISA’, ‘barT’],輸出:[‘Adam’, ‘Lisa’, ‘Bart’]。
#!/usr/bin/env python def chname(name): n = 0 for a in name: if n==0: cname = a.upper() else: cname = cname + a.lower() n = n+1 return cname print map(chname,[‘bob‘,‘jeAN‘,‘jessica‘])
python map()函數