python函数式编程-map/reduce

map()函数接收两个参数,一个是函数,一个是Iterator,map将传入的函数依次作用到序列的每个元素,并把结果作为新的Iterator返回。

>>> def f (x):

...    return x * x

... >>> r = map(f,[1,2,3,4,5,6,7])

>>> r

>>> list(r)

[1, 4, 9, 16, 25, 36, 49]


>>> from functools import reduce

>>> def add(x,y):

...    return x + y

...

>>> reduce(add,[1,3,5,7,9])

25

如果要只是求和的话,可以使用map函数,

>>> sum([1,2,3,4,5])

15


>>> from functools import reduce

>>> def fn(x,y):

...    return 10*x + y

...

>>> reduce(fn,[1,2,3,4])

1234

>>> reduce(fn,[1,3,5,7])

1357

>>>

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容