2018-05-11 python的map和reduce函数

2018-05-11  本文已影响0人  小沫代码之路

格式:
map(func, seq[, seq2...])
用法:
将seq里的元素传入func,然后返回值是一个列表,如果有多个seq的话,长度必须相等,不然会报错

#求3的余数
print map(lambda x: x % 3, [1, 2, 3])    # [1, 2, 0]

#求两个列表对应索引的值的和
print map(lambda x, y: x + y, [1, 2, 4], [3, 4, 5]) # [4, 6, 9]

#求元组
print map(lambda x, y: (x + y, x - y), [1, 3, 4], [1, 2, 3]) # [(2, 0), (5, 1), (7, 1)]

格式:
reduce(func, seq[, init])
eg:
reduce(func, [1, 2, 3]) = func(func(1, 2), 3)
用法
迭代上一次的结果去计算

#阶乘 1-5
print reduce(lambda x, y: x * y, range(1, 6))  # 120
#上述结果乘2
print reduce(lambda x, y: x * y, range(1, 6), 2)  # 240
上一篇下一篇

猜你喜欢

热点阅读