python3學習之map函數和filter函數

map()函數能夠對一個數據進行同等迭代操做。例如:app

def f(x):
     return x * x
r = map(f, [1, 2, 3, 4, 5, 6, 7, 8, 9])
print(list(r))

map函數傳入的第一個參數就是函數自己,即f。第二個參數是要操做的數據函數

map() 做爲高階函數,事實上它把運算規則抽象了,所以,咱們不
但能夠計算簡單的 f(x)=x 2 ,還能夠計算任意複雜的函數,好比,把這個
list 全部數字轉爲字符串:spa

print(list(map(str, [1, 2, 3, 4, 5, 6, 7, 8, 9])))

filter() 的做用是從一個序列中篩出符合條件的元素。code

語法:blog

filter函數的語法是filter(函數名,序列)字符串

list1=[20,12,13,5,8,19]
 def fa(n):#過濾出大於10的數字,並生成一個新的列表
 list2=[]
 if n>10:
 list2.append(n)
 return list2
print(list(filter(lambda n:n>10,list1)))#使用filter配合lambda函數實現
輸出結果:[20,12,13,19]

map函數和filter函數均可以結合lambda函數使用,能夠實現對一個序列中的每個元素作一樣的事情class

相關文章
相關標籤/搜索