概念
能把函数当成参数传递的就是高阶函数
一、map
""" map(func,Iterable) 功能:处理数据 把Iterable中的数据一个一个拿出来,扔到func函数中做处理,把处 理好的结果放到迭代器中,最后返回迭代器 参数: func:自定义函数或者内置函数 iterable:可迭代数据(容器类型数据,range对象,迭代器) 返回值: 迭代器 """ lst = ["1","2","3"] lst1 = map(int,lst)
二、reduce
""" reduce(func.Iterable) 功能:计算数据 先把Iterable中的前两个值拿出来,扔到func当中做运算,把计算结果和iterable中的第三个元素扔到func当中做运算,再把结果算出来和第四个元素做运算,以此类推 参数: func:自定义函数 Iterable:可迭代数据(容器类型数据,range对象,迭代器) 返回值: 计算之后的结果 """ from functools import reduce def func(x,y) return x*10+y lst = [1,2,6,8] res = reduce(func,lst) print(res)
三、sorted
""" sorted(Iterable,key=函数,reverse=False) 功能:排序 参数: Iterable:可迭代数据(容器类型数据,range对象,迭代器) key:指定自定义函数或者内置函数 reverse:代表升序或者降序,默认升序 返回值: 排序之后的结果 """ #1,默认升序 lst = [1,2,3,4,-90,,2,100,-55] res = sroted(lst) #2,降序 res = sroted(lst,reverse=True) #3.指定内置函数 res = sroted(lst,key=abs) #4,使用自定义函数进行排序 def func(n): return n % 10 res = sorted(lst,key=func)
#sort 和sorted区别 1、sorted可以排序一切容器类型数据,sort只针对列表排序 2、sorted返回新列表,sort基于原列表修改
四、filter
""" filter(func,Iterable) 功能:过滤 return True 当前数据保留 return False 当前数据舍弃 参数: Iterable:可迭代数据(容器类型数据,range对象,迭代器) func:自定义函数 返回值: 迭代器 """ #过滤列表元素 lst = [1,2,3,4,5,6,7,8,9,10] def func(i): if i % 2 ==0: return True else: return False res = filter(func,lst) print(res)
标签:函数,迭代,python,res,lst,func,高阶,Iterable From: https://www.cnblogs.com/songyunjie/p/16825747.html