lwlong21 发表于 2020-4-29 18:24

初学Python,请教

请教一下 为什么会报错啊
Traceback (most recent call last):
File "D:/pythonstudy/text.py", line 5, in <module>
    list = '*'
IndexError: list assignment index out of range


list = []
for i in range(1, 31):
    list.append(i)
    if i % 3 == 0:
      list = '*'
print(list)

heiheihe 发表于 2020-4-29 20:33

list = []
for i in range(1, 31):
    list.append(i)
    print(list)
    print(i)
    print(i % 3)
    if i % 3 == 0:
      list = '*'
print(list)
你可以自己打印看下,当i为3的时候进入if判断。此时list的长度是3,但是索引是从0开始的

哈哈衬 发表于 2020-4-29 20:34

3 % 3 == 0 但是 list是不存在的,就会报这个错

我没有失眠啊i 发表于 2020-4-29 20:36

本帖最后由 我没有失眠啊i 于 2020-4-29 20:38 编辑

list = []
for i in range(0, 30):
    list.append(i)
    if i % 3 == 0:
      list = '*'
print(list)



从0开始就好了

pkni1230 发表于 2020-4-29 20:36

越界了。。。。。。。。。。

wx9265661 发表于 2020-4-29 20:40

list改成list

花不开但要富贵 发表于 2020-4-29 20:43


记住索引是从0开始的就行了
list = []
for i in range(0, 31):
    list.append(i)
    if i % 3 == 0:
      list = '*'
      
print(list)

神秘高手Mars偉 发表于 2020-4-29 21:04

Qnly_genius 发表于 2020-4-29 21:18

建议变量名别用list,它是python的关键词

lwlong21 发表于 2020-4-29 21:43

第一次发帖,好像还发错地方了,下次注意
不过谢谢大家,现在明白了!
页: [1] 2
查看完整版本: 初学Python,请教