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

>>> L=[range(0,101)] >>> sum=0 >>> for x in L: sum=sum+x*x print sum 为什么会报错?

>>> L=[range(0,101)]

>>> sum=0

>>> for x in L:

sum=sum+x*x

print sum


正在回答

4 回答

L=range(1,101)

sum=0

for x in L:

    sum=sum+x*x

print sum

Python的代码块区分就是根据缩进来区分的,所以Python对代码的缩进要求严格,哪个是并列,哪些是上下级要区分好!不懂再问我!

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

hahahah123 提问者

应该不是缩进问题,我检查过了缩进都对
2017-11-17 回复 有任何疑惑可以回复我~

print(sum)试试

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

把你的 list 改成L=[i for i in range(0, 101)] 就可以了

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

hahahah123 提问者

我试过了,你说的是对的,但是为什么改成这样就行?
2017-11-17 回复 有任何疑惑可以回复我~

L的list定义有问题,在【】里使用ranger创建函数得到的是一个list。

另外sum=sum+x*x 没有严格的空格书写

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

hahahah123 提问者

什么意思?是不是在list中又创建一个list吗?
2017-11-17 回复 有任何疑惑可以回复我~
#2

qq_秋千树_0 回复 hahahah123 提问者

你可以试着输出一下L,你就能看见,你这样的写法会有两个【】
2017-11-20 回复 有任何疑惑可以回复我~

举报

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

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

进入课程

>>> L=[range(0,101)] >>> sum=0 >>> for x in L: sum=sum+x*x print sum 为什么会报错?

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