Python中内置的map()和filter()函数详解
发布时间:2023-06-08 05:09:59
Python中的map()和filter()函数都是内置函数,用于处理序列和集合的函数。这两个函数在实际编程中非常常用,下面详细介绍它们的用法。
一、map()函数
map()函数的作用是将一个序列中的每个元素都执行同一个函数,然后返回一个新的序列,新序列中的元素为原序列中每个元素执行函数后的结果。map()函数的语法如下:
map(function, iterable, ...)
参数:
function:要执行的函数
iterable:要处理的序列或集合
返回值:一个迭代器,元素为序列中每个元素执行函数后的结果
示例如下:
# 将列表中的元素平方 a = [1, 2, 3, 4, 5] b = map(lambda x: x ** 2, a) print(list(b)) # 输出:[1, 4, 9, 16, 25]
上面的代码中,map()函数对a列表中的每个元素进行平方操作,并将结果放到一个迭代器中,最后通过list()函数将迭代器转化为列表,输出结果为[1, 4, 9, 16, 25]。
二、filter()函数
filter()函数的作用是对序列中每个元素执行一个函数,并将结果为真的元素放入一个新的序列中返回。filter()函数的语法如下:
filter(function, iterable)
参数:
function:要执行的函数
iterable:要处理的序列或集合
返回值:一个迭代器,元素为序列中每个元素执行函数后结果为True的元素
示例如下:
# 过滤列表中的偶数 a = [1, 2, 3, 4, 5] b = filter(lambda x: x % 2 == 0, a) print(list(b)) # 输出:[2, 4]
上面的代码中,filter()函数对a列表中的每个元素进行判断,判断结果为偶数的元素会被放入一个迭代器中,最后通过list()函数将迭代器转化为列表,输出结果为[2, 4]。
总结:map()函数和filter()函数是Python内置的强大函数,它们能够对序列和集合进行非常便捷的操作,大大减轻了我们的编程工作量。
