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

这样写为什么不对呢?

def calc_prod(lst):    

    def lazy_prod(L[]):      

         for x,y in L:            

            return L.append()=x*y    

    return lazy_prod

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

print f()

正在回答

1 回答

有些语法瑕疵:

1/定义函数中的参数是一个变量,只能字母/数字/下划线...所以,def lazy_prod(L[])中的[]是非法字符...

2/for x,y in L:进行迭代,只能一个参数

3/return语句中不能进行赋值...即return L.append()=x*y. 你应该是想写成L.append(x*y)...

还有其他问题...

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

举报

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

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

进入课程

这样写为什么不对呢?

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号