Python列表索引超出For循环范围

时间:2018-07-31 10:35:35

标签: python list indexing

请我不知道发生了什么事...

import random
o = 0
p = 5
n = 5
z = -1
y = -1
a = ["x" * n]
b = [7,7,1,8,2]

while o != p:
     for x in range(n):
         z += 1
         y += 1
         while a[z] != b[y]
              a[z] = random.randint(0,9)
         y += 1
         print(str(b[0:y])
         y -= 1
         o += 1

我希望一切都是可以理解的。我的代码有点凌乱并且变得精致,所以我更改了变量。错误始终在第二次打印时发生,无论第二次打印b时始终是什么,无论n是什么,除了n = 1:

while a[z] != b[y]
IndexError: list index out of range

1 个答案:

答案 0 :(得分:0)

a = ["x" * n]替换为a = ["x"] * n,只要您摆脱了所有语法错误,它就可以工作。以下是输出。

[7]
[7, 7]
[7, 7, 1]
[7, 7, 1, 8]
[7, 7, 1, 8, 2]