Talk is cheap show me the code
y=[1,1,2,1,2,1,2,1,1,1,2]
index = 0
for i in y:
if i==1:
print()
y.remove(i)
print(index,":","List_2=",y," i:",i)
index += 1
print("List_2=",y)
首先我们先看一下运行结果:
出现这个结果的原因是:for i in y中的i每次取值为y[index],当 i == 1时,y.remove()后,y列表的所有元素会自动前移一位。但index值不会重新开始。这里有一个细节需要注意,y.remove()并不算删除某一下标的元素,而是删除从左到右的第一个元素为1的值。因此会出现如下图所示的现象: