专业编程基础技术教程

网站首页 > 基础教程 正文

python内置函数map/reduce/filter

ccvgpt 2024-11-02 11:17:24 基础教程 6 ℃

Python内置函数map(), reduce()和filter()都是非常实用的函数式编程工具。

  1. map()函数

map()函数用于将一个函数应用于一个可迭代对象(如列表、元组等)的每个元素,并返回一个包含应用函数后的结果的迭代器。它的语法如下:

python内置函数map/reduce/filter

python
map(function, iterable[, iteraboe])

其中,function是用于应用函数的对象,iterable是可迭代对象,而iterable是可选的,表示要应用函数的第二个可迭代对象。下面是一个示例:

python
def square(x):
return x ** 2  


numbers = [1, 2, 3, 4, 5]
squared_numbers = map(square, numbers)
print(list(squared_numbers)) # [1, 4, 9, 16, 25]
  1. reduce()函数

reduce()函数用于对一个可迭代对象中的元素进行累积计算,它的语法如下:

python
reduce(function, iterable[, initializer])

其中,function是用于计算累积值的函数,iterable是可迭代对象,而initializer是可选的,表示初始值。下面是一个示例:

python
from functools import reduce
import operator


numbers = [1, 2, 3, 4, 5]
sum_of_numbers = reduce(operator.add, numbers)
print(sum_of_numbers) # 15
  1. filter()函数

filter()函数用于过滤可迭代对象中的元素,只保留符合条件的元素,它的语法如下:

python
filter(function, iterable)

其中,function是用于判断元素是否符合条件的函数,iterable是可迭代对象。下面是一个示例:

python
def is_even(x):
return x % 2 == 0  


numbers = [1, 2, 3, 4, 5]
even_numbers = filter(is_even, numbers)
print(list(even_numbers)) # [2, 4]

最近发表
标签列表