Python常用函数详解——map、filter、reduce
发布时间:2023-06-21 02:08:03
Python 提供了三个常用的函数,分别是 map、filter、reduce。这三个函数都接受一个函数和一个可迭代对象作为参数,并且都返回一个可迭代对象。
1. map 函数
map 函数可以对可迭代对象中的每个元素应用一个函数,并将结果存储在一个生成器中返回。例如,将一个列表中的所有元素进行平方操作:
lst = [1, 2, 3, 4, 5] squared = map(lambda x: x**2, lst) print(list(squared)) # [1, 4, 9, 16, 25]
2. filter 函数
filter 函数会对可迭代对象中的每个元素应用一个函数,如果函数返回值为 True,则将该元素存储在一个生成器中返回。例如,将一个列表中的所有偶数筛选出来:
lst = [1, 2, 3, 4, 5] even = filter(lambda x: x % 2 == 0, lst) print(list(even)) # [2, 4]
3. reduce 函数
reduce 函数对可迭代对象中的每个元素应用一个函数,然后将结果缩减为一个单一的值并返回。例如,计算一个列表中所有数字的和:
from functools import reduce lst = [1, 2, 3, 4, 5] total = reduce(lambda x, y: x+y, lst) print(total) # 15
这里利用了 functools 模块中的 reduce 函数。
以上就是这三个常用函数的详细解释。它们可以使我们在 Python 程序中更加高效地处理数据。
