这是我第一次发帖,原谅任何格式错误。我想从我循环的一个压缩列表中删除一个元素,但是当我从列表中删除该元素时,索引似乎跳过了下一次迭代。
例如,您将在下面的代码中看到元素4被跳过。
x = [1,2,3,4,5]
y = [1,2,3,4,5]
for i,j in zip(x,y):
print(i,j,x,y)
if i==3:
x.remove(i)
这会产生以下输出。
1 1 [1, 2, 3, 4, 5] [1, 2, 3, 4, 5]
2 2 [1, 2, 3, 4, 5] [1, 2, 3, 4, 5]
3 3 [1, 2, 3, 4, 5] [1, 2, 3, 4, 5]
5 5 [1, 2, 4, 5] [1, 2, 4, 5]
请注意,“i”和“j”共跳过了4个。任何人都可以解释为什么会这样吗?