请问,为什么第二次循环,i变成了3,不应该是2吗?蒙圈中,请各位帮忙解答一下,感谢
lst = [1, 2, 3, 4, 5] for i in lst: print(i) print(lst) lst.remove(i) print(lst)
在遍历过程中删除元素,会导致列表所有元素前移
删掉了前面的,后面的就变序号了,但是 i 也是变的,所以就不是你要的样子咯,应该把要删的赋值到另一个变量上,这样比较不容易出错。或者你把 i 变一下。