关于enumerate遍历的问题

import numpy as np

a=np.arange(10).tolist()
# a=[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

for index,ele in enumerate(a):
    a.remove(ele)

# a=[1,3,5,7,9]

该代码不会将列表a的所有元素删除。

当index=0,ele=0时,删除首元素0,此时列表元素次序变化,首元素变为1。

但又因当前index=0,故进入下一循环时,index=1,而对应元素ele=2,删除元素2。

以此类推。

上一篇:enumerate


下一篇:python零散知识