这里主要介绍2个函数:map, filter
1、map函数
通过查看源码发现,map函数接收两个参数,分别是函数和可迭代对象。map将函数依次作用于可迭代对象的每次元素,即可简单的实现复杂的功能
# 将输入的字符串类型的数据转化为 浮点型数据并返回 map(float, input("请输入数字:”).split(","))
第一个参数可以自定义
# 通过自定义函数,将list中的元素都加1 def f(x): return x + 1 list = [2,3,4,5,6] map(f, list)
2、filter函数
filter函数的功能和map函数类似,但是具有筛选功能,即根据返回值为True还是False来决定保留还是丢弃某个元素,可以理解为返回满足函数条件的元素
这里贴上源码解释:
filter(function or None, iterable) --> filter object Return an iterator yielding those items of iterable for which function(item) is true. If function is None, return the items that are true.
我们来看一个例子:
def is_even(n): return n % 2 == 0 filter(is_even, [1, 2, 4, 5, 6, 9, 10, 15]) 结果:[2,4,6,10]
原文:https://www.cnblogs.com/7yuanjie/p/10099882.html