shaoheshaohe 发表于 2019-3-13 23:01:38

Python笔记|Python3中没有reduce函数的原因

Guido大大原计划把 lambda, reduce 都干掉。

最后只干掉了 reduce

使用

首先在python3版本中,直接使用reduce()的话,系统会报错,提示不存在reduce()函数。

>>> arr =
>>> reduce(lambda x, y : x+y, arr)
Traceback (most recent call last):
File "<pyshell#10>", line 1, in <module>
    reduce(lambda x, j : x+y, arr)
NameError: name 'reduce' is not defined
1
2
3
4
5
6
在Python 3里,reduce() 函数已经被从全局名字空间里移除了,它现在被放置在fucntools 模块里

使用前需要先引用

>>> from functools import reduce
>>> arr =
>>> reduce(lambda x, y : x+y, arr)
15
---------------------


页: [1]
查看完整版本: Python笔记|Python3中没有reduce函数的原因