随着人工智能(AI)技术的推广应用下,Python作为其底层语言被广泛学习,想要学成Python,需要掌握一定的高阶函数,这些函数极大地增强了Python的灵活性和表达能力。
1、map()
对序列的每个元素应用指定函数。
2、filter()
使用指定函数过滤序列中的元素。
3、reduce()
对序列中的元素进行累积操作(需要from functools import reduce)。
4、sorted()
对序列进行排序,可通过key参数指定排序函数。
5、Iambda
创建匿名函数,常用作高阶函数的参数。
6、apply()
将函数应用于给定参数(已被新版Python抛弃,推荐使用*args和**kwargs)。
7、functools.partial()
对函数进行部分应用,返回一个新的函数。
8、operator模块中的函数
如operator.add, operator.mul等,常用作高阶函数的参数。
9、operator模块中的函数
如operator.add, operator.mul等,常用作高阶函数的参数。
10、itertools.groupby()
对序列进行分组,可通过key参数指定分组函数。
11、itertools.groupby()
对序列进行分组,可通过key参数指定分组函数。
12、functools.lru_cache()
将函数结果进行缓存,加速函数执行。
13、functools.cmp_to_key()
将比较函数转换为key函数,用于sorted()和min()/max()。
14、functools.cmp_to_key()
将比较函数转换为key函数,用于sorted()和min()/max()。
15、zip()
将多个序列打包为一个元组的序列,可作为高阶函数的输入。
16、enumerate()
将序列组合为一个索引序列,常用于高阶函数的key参数。
17、all()
判断序列中的所有元素是否都满足条件(条件函数)。
18、all()
判断序列中的所有元素是否都满足条件(条件函数)。
19、sortedcontainers模块中的SortedList.bisect_left()和SortedList.bisect_right()
在保持排序的同时插入元素,通过key参数指定排序函数。
20、concurrent.futures.ProcessPoolExecutor.map()
并行地应用函数到可迭代对象,返回Future对象的迭代器。
本文凡亿教育原创文章,转载请注明来源!