四大高阶函数

高级函数之四大函数
 
map 函数的用法
 
map(function, iterable, ...)
(函数名,可迭代对象 )
功能: 将第一个参数 function 依次作用在参数可迭代对象中的每一个元素上,返回包含每次 function 函数返回值的新迭代器
参数: function -- 函数,有两个参数 iterable -- 一个或多个可迭代对象
 
list=[1,2,3,4,5]
def prod(n):
return x * 3
ret = map(prod, [1,2,3,4,5])
for i in ret:
print(i)
 
 
reduce函数的用法
功能:实现效果的累积
 
参数: function -- 函数,有两个参数 iterable -- 可迭代对象 initializer -- 可选,初始参数
 
返回值: 返回函数计算结果
 
例子:
from functools import reduce
def addNum(a, b):
return a + b
# 格式:reduce(函数, 可迭代对象)
ret = reduce(addNum, [11, 22, 33, 44, 55])
print(ret)
 
 
 
 
filter函数的用法
格式: filter(function, iterable)
功能: 该接收两个参数,第一个为函数,第二个为序列,序列的每个元素作为参数传递给函数进行判断,然后返回 True 或 False,最后将返回 True 的元素放到新迭代器对象中
参数: function -- 判断函数 iterable -- 可迭代对象(如:序列)
返回值: 返回一个迭代器对象
 
# 格式:filter(判断函数,可迭代对象)
例子:
def MyNum(n):
return n % 2 == 0
ret = filter(MyNum, range(1,21))
print(list(ret))
 
 
sorted的用法
格式: sorted(iterable, key=abs, reverse=False)
功能: 对所有可迭代的对象进行排序操作
参数: iterable -- 可迭代对象。 key -- key指定的函数将作用于可迭代对象上的每一个元素,并根据key函数返回的结果进行排序 reverse -- 排序规则,reverse = True 降序 , reverse = False 升序(默认)
返回值: 返回重新排序的列表
例子:
ret = sorted([99, 66, 77, 88, 4, 5, 6, 21, 22, 33], reverse=True)
print(ret)
 
 
 归总:
1.map
1).map(function, Iterable)
2).作用: 将可迭代对象中的每一个元素依次传入function内,做相同的操作, 返回一个迭代器
2.reduce()
1).reduce(function, Iterable)
2).作用: 将可迭代对象中的每一个元素依次传入function中, 将所有的元素进行累积操作
3.filter
1).filter(function, Iterable)
2).作用: 根据function指定的规则进行筛选, 如果一个元素传入function中, 返回True, 这个元素保留下来, 返回False, 这个元素会被抛弃掉
4.sorted
1).参数: sorted(Iterable, key=function, reverse=True)
2).作用: 对所有元素进行指定规则的排序
sorted和.sort
.sort(): 改变原数据进行排序
sorted(): copy出一份数据进行排序, 不改变原数据
 
 

posted @ 2021-05-30 21:01  Why-L  阅读(247)  评论(0)    收藏  举报