在 Python 中使用 `filters`、`mappers` 和 `reducers` 转换数据
在 Python 中使用 filters
、mappers
和 reducers
转换数据
map
、filter
和reduce
是Python中的三个函数,用于简化和编写简洁的代码。这三个函数在不使用迭代语句的情况下一次性应用于可迭代对象。map
和filter
函数作为内置函数可用,而reduc
e函数要求您导入functtools
模块。这些函数被数据科学家广泛用于数据处理。map
函数和filter
函数用于转换和过滤数据,而reduce
函数用于数据分析,以从大型数据集中获得有意义的结果。
接下来,我们逐一讲解它们。
map
在 Python 中,map
的原型是:
map(func, iter, ...)
func
实参是一个函数,这个函数会应用到由 iter
对象的每一个项目上。 原型里右侧的三个点(和 C 语言类一样),说明 map
函数可以接收多个 iter
。这里有一点很重要,需要了解,就是函数 func
的实参数量,必须与 map
接收到的可迭代对象的数量一致,这一点在后面的例子里会讲到。map
函数输出的是一个map
对象,它是一个生成器对象。可以将map
对象传递给列表构造函数,把它转换为列表.
先以一个简单的例子开始,看一下 map
是怎么使用的。在下面这个例子中,有一个简单的转换函数。这个转换函数把一个列表中的数字转换成它们的平方值。下面是其代码:
myList = [1, 2, 3, 4, 5, 6, 7, 8, 9