【python】三个高阶函数 使用介绍map(),reduce(),filter()

一。map():入参两个,前一个是函数,第二是是iterable.

map将序列的每个数据作用到这个函数上,并把结果作为新的Iterator返回

PS。

it是惰性序列Iterator,因此通过list()函数让它把整个序列都计算出来并返回一个list

二。reduce():作用与map()比较类似,但不同点是,reduce中的这个函数必须接收两个函数,然后把这两个参数处理的结果继续和序列的下一个元素做累积计算(返回的最终结果是一个数据,而不是iterator)

reduce(f, [x1, x2, x3, x4]) = f(f(f(x1, x2), x3), x4)

三。filter():用于过滤序列

map()类似,filter()也接收一个函数和一个序列。和map()不同的是,filter()把传入的函数依次作用于每个元素,然后根据返回值是True还是False决定保留还是丢弃该元素



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章