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

请问这道题的逻辑错在哪里?

def square_of_sum(L):
    for x in L:
        sum=sum(x*x)
    return sum
print square_of_sum([1,2,3,4,5,])
print square_of_sum([-5,0,5,15,25])

正在回答

4 回答

sum还要赋初值 sum=0

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

sum=sum(x*x)   换成 sum + x *x

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

sum是一个系统的内置函数,你可以在shell里用help(sum)调用看下用法,(如下):

Help on built-in function sum in module __builtin__:


sum(...)

    sum(sequence[, start]) -> value

    

    Return the sum of a sequence of numbers (NOT strings) plus the value

    of parameter 'start' (which defaults to 0).  When the sequence is

    empty, return start.


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

sum的参数是一个list。sum(x*x)参数不对。

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

Huang小明 提问者

谢谢,但我还是有个疑问:前面我已经用语句for x in L遍历了list里面的所有元素啦,为什么sum()的参数一定要是list呢?
2016-10-13 回复 有任何疑惑可以回复我~
#2

qq_MissingYou_0 回复 Huang小明 提问者

因为题里面要求的是list,而且代码中最后两行给的sum的参数就是list啊!
2016-10-30 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
初识Python
  • 参与学习       758351    人
  • 解答问题       8967    个

学python入门视频教程,让你快速入门并能编写简单的Python程序

进入课程

请问这道题的逻辑错在哪里?

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

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

帮助反馈 APP下载

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

公众号

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