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

这样写出来的代码为什么运行错误

def calc_prod(lst):

    def prod():

        y=1

        for x in lst:

            y=y*x

            return y

    return prod


f = calc_prod([1, 2, 3, 4])

print f()

这个代码运行结果是1 ,什么原因

如果第二行代码def prod()改成def prod(lst),则代码错误又是什么原因

正在回答

3 回答

return  y 应该在循环外面


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

喵喵喵 你把我给搞晕了

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

神乐_Nash

人家写的很好很清晰啊
2018-12-04 回复 有任何疑惑可以回复我~

我知道了,

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

举报

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

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

进入课程

这样写出来的代码为什么运行错误

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