课程
/后端开发
/Python
/python进阶
。reduce把一个函数作用在一个序列[x1, x2, x3, ...]上,这个函数必须接收两个参数,reduce把结果继续和序列的下一个元素做累积计算,在这边的代码里却输入了3个参数:reduce(f,list,1),要如何理解?另外,f=calc_prod(), 这时候的f是理解成方法还是变量?
2015-10-24
源自:python进阶 2-8
正在回答
見python進堦中描述:reduce()函数也是Python内置的一个高阶函数。reduce()函数接收的参数和 map()类似,一个函数 f,一个list。reduce()还可以接收第3个可选参数,作为计算的初始值。
passerby_ 提问者
仅个人见解,不喜勿喷~~~
reduce中第三个参数表示把初始值设置成1
f是个变量,指向的是calc_prod()函数,返回的是函数
f()是方法,调用了calc_prod()函数,返回的是结果
举报
学习函数式、模块和面向对象编程,掌握Python高级程序设计