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

for i in range(len(L)): 请问哪里错了呢?


def square_of_sum(L):
    sum = 0
    for i in range(len(L)):
        sum += L(i)*L(i)
    return sum   
print (square_of_sum([1, 2, 3, 4, 5]))

请问哪里错了呢?


正在回答

4 回答

同楼上

IDLE提示list对象不可调用

把L(i)改成L[i]就对了

用小括号的时候,L被当作一个函数了,而L在这是个list,所以不可调用

用中括号可以获取list的元素

参考回答见http://stackoverflow.com/questions/18758186/typeerror-list-object-is-not-callable

http://img1.sycdn.imooc.com//587b6bd60001fc8103610286.jpg

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

文子末 提问者

非常感谢您的解答!
2017-01-16 回复 有任何疑惑可以回复我~
def sum_of_square(seq):
    return sum([i**2 for i in seq])
    
#是不是会好看一点


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

是不是这个

sum += L(i)*L(i)

sum += L[i]*L[i]

1 回复 有任何疑惑可以回复我~
L = [1, 2, 3, 4, 5] 
# len(L)=5 
# range(len(L)) = [0, 1, 2, 3, 4]


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

举报

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

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

进入课程

for i in range(len(L)): 请问哪里错了呢?

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