l1264140691 发表于 2020-10-17 16:21:56

关于数组课后练习题的小问题

member=['小甲鱼','黑夜','迷途','怡静','秋舞斜阳']
member.insert(1,'88')
member.insert(3,'90')
member.insert(5,'85')
member.insert(7,'90')
member.insert(9,'88')
print(member)
j=0
length=len(member)
for i in range(length):
    print(member,' ',member)
    j+=2
上述是我的代码

python运行完结果是对的 但是下面又出现了红字如下
Traceback (most recent call last):
File "E:/python/p11a.py", line 11, in <module>
    print(member,' ',member)
IndexError: list index out of range

这是什么意思呀,我觉得我代码没有超出范围呀

昨非 发表于 2020-10-17 16:26:51

member=['小甲鱼','黑夜','迷途','怡静','秋舞斜阳']
member.insert(1,'88')
member.insert(3,'90')
member.insert(5,'85')
member.insert(7,'90')
member.insert(9,'88')
print(member)
j=0
length=len(member)
for i in range(length):
    if i%2==0:   #加这一行就没问题了
      print(member,' ',member)
      j+=2

昨非 发表于 2020-10-17 16:30:00

不,你越界了,
你的代码里,length=10
i的取值为一到九
j的取值为0,2,4,6,8,10,12,,,,一直到十八
你说越没越界

疾风怪盗 发表于 2020-10-17 17:56:01

为什么要这么复杂,range有个参数,就是控制间隔的,这样就不会超范围了
for i in range(0,len(member),2):
    print(member,' ',member)

昨非 发表于 2020-10-17 18:06:40

疾风怪盗 发表于 2020-10-17 17:56
为什么要这么复杂,range有个参数,就是控制间隔的,这样就不会超范围了

这好像时某个课后作业里小甲鱼为了加深理解设置的习题
按他思路来就行了

疾风怪盗 发表于 2020-10-17 18:11:06

昨非 发表于 2020-10-17 18:06
这好像时某个课后作业里小甲鱼为了加深理解设置的习题
按他思路来就行了

{:10_249:}好吧。。。。。。没做过小甲鱼的课后题。。。。。

l1264140691 发表于 2020-10-18 13:45:09

昨非 发表于 2020-10-17 16:30
不,你越界了,
你的代码里,length=10
i的取值为一到九


哦哦 明白了 多谢!!!
页: [1]
查看完整版本: 关于数组课后练习题的小问题