Python提供了一些有助于进行函数式编程的函数:map
、filter
和reduce
。
# 使用map将序列中的所有元素传递给函数
print(list(map(int, '2019 04 11'.split()))) # [2019, 4, 11]
# 使用filter根据布尔函数的返回值来对元素进行过滤
print(list(filter(lambda s: s%2==0, range(10)))) # [0, 2, 4, 6, 8]
# 函数reduce使用指定的函数将序列的前两个元素合二为一,再将结果与第3个元素合二为一,依此类推,直到处理完整个序列并得到一个结果
from functools import reduce
print(reduce(lambda x, y: x+y, range(10))) # 45
(最近更新:2019年04月12日)