为了账号安全,请及时绑定邮箱和手机立即绑定

一个函数中嵌套一个函数 再嵌套一个 改怎么写。

def calc_prod(lst):
    def mul():
        reduce(fuc,lst)
    def fuc(x,y):
        return x*y
    return mul
 
f = calc_prod([1, 2, 3, 4])
print f()


求正确的书写格式

正在回答

2 回答

def calc_prod(lst):
	def mul():
		def fuc(x,y):
			return x*y
		return reduce(fuc,lst)
	return mul()
f = calc_prod([1,2,3,4])
print f


0 回复 有任何疑惑可以回复我~
#1

啊B 提问者

非常感谢!
2016-02-29 回复 有任何疑惑可以回复我~

要把mul的reduce函数作为返回值送回去,这样你在调用的时候才回运行reduce的结果。没有返回reduce函数的话,你只会得到一个返回值是None的空函数,当然运行的时候什么都得不到了

def calc_prod(lst):
    def mul():
        return reduce(fuc,lst) 
    def fuc(x,y):
        return x*y
    return mul
f = calc_prod([1, 2, 3, 4])
print f()



0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
python进阶
  • 参与学习       255665    人
  • 解答问题       2949    个

学习函数式、模块和面向对象编程,掌握Python高级程序设计

进入课程

一个函数中嵌套一个函数 再嵌套一个 改怎么写。

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信