Python中有许多内置函数,可以放标高效的帮我们完成程序中遇到的一些需求,拥有很强大的功能,我们使用好了,可以大大提高代码效率。
本篇文章就来梳理一下经常使用的Python内置函数。
map()函数
map()
map()函数接受两个参数,一个是函数,一个是序列, map()将传入的函数依次作用到可迭代对象的每一个元素,并把结果作为迭代器(Iterator)返回。 简单说就是,map()函数会把序列里的每一个元素依次当做指定函数的参数执行一遍,最终返回执行结果的序列。
举个例子,对列表里的每个数字作平方:
nums = [1, 2, 3, 4, 5]
a = map(lambda x: pow(x, 2), nums)
for i in a:
print(i)
# 结果依次输出1,4,9,16,25
通过结果可以看出,map()函数返回的依然是一个可迭代对象(Iterable),可以使用for循环遍历。
reduce()函数
前面说到使用map()函数对列表里的每个数字作平方操作,那么如果我想将列表里的各个元素相加求和,该怎么做呢?
这时候就该reduce()函数上场了。 reduce()函数会对序列中的元素进行累积操作。也是接收两个参数,函数(有两个参数)和序列,先对序列中的第 1、2 个元素进行函数操作,得到的结果再与第三个元素进行函数操作,以此类推,最终生成所有元素累积运算的结果。
注意: 在Python3中,redu