map
参数
-
function -- 函数
-
iterable -- 一个或多个序列
- 对每个序列中的元素对应映射
map(fun, x[y,z])会根据提供的函数对指定序列做映射,用法
map(function, iterable, ...)
返回值
-
Python 2.x 返回列表。
-
Python 3.x 返回迭代器。
>>> map(square, [1,2,3,4,5]) # 计算列表各个元素的平方 [1, 4, 9, 16, 25] >>> map(lambda x: x ** 2, [1, 2, 3, 4, 5]) # 使用 lambda 匿名函数 [1, 4, 9, 16, 25] # 提供了两个列表,对相同位置的列表数据进行相加 >>> map(lambda x, y: x + y, [1, 3, 5, 7, 9], [2, 4, 6, 8, 10]) [3, 7, 11, 15, 19]
reduce() 函数
reduce() 函数会对参数序列中元素进行累积,从序列中提取2个参数
python3 需要从functools中导入
最终返回某个值
>>>def add(x, y) : # 两数相加 ... return x + y ... >>> reduce(add, [1,2,3,4,5]) # 计算列表和:1+2+3+4+5 15 >>> reduce(lambda x, y: x+y, [1,2,3,4,5]) # 使用 lambda 匿名函数 15
斐波那契
li = [0, 1] def fb(n): if n <=2: return li for itenm in range(n-2): li.append(li[-2]+li[-1]) if __name__ == '__main__': fb(10)