您好,登錄后才能下訂單哦!
原型:map(function, sequence),作用是將一個列表映射到另一個列表
map()函數接收兩個參數,一個是函數,一個是Iterable,
map將傳入的函數依次作用到序列的每個元素,并把結果作為新的Iterator返回。
def f(x):
y = x * x
return y
r = map(f, range(10))
print(r)
print(list(r))
print(list(map(str, [1, 2, 3, 4, 5, 6, 7, 8, 9])))
原型:reduce(function, sequence, startValue),作用是將一個列表歸納為一個輸出
reduce把一個函數作用在一個序列[x1, x2, x3, ...]上,這個函數必須接收兩個參數,
reduce把結果繼續和序列的下一個元素做累積計算,其效果就是:
reduce(f, [x1, x2, x3, x4]) = f(f(f(x1, x2), x3), x4)
from functools import reduce
def add(x, y):
z = x + y
print("{0}+{1}={2}".format(x, y, z))
return z
print(reduce(add, range(10)))
原型:filter(function, sequence),作用是按照所定義的函數過濾掉列表中的一些元素,
使用方法:
def f2(x):
return x%2 != 0
list(filter(f2, range(10)))
Out[3]: [1, 3, 5, 7, 9]
記住:這里的function必須返回布爾值。
原型:lambda <參數>: 函數體,隱函數,定義一些簡單的操作,
使用方法:
f3 = lambda x: x**2
f3(2)
Out[10]: 4
還可以結合map、reduce、filter來使用,如:
list(map(f3,range(10)))
Out[11]: [1, 4, 9, 16, 25, 36, 49, 64, 81]
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。