当我在使用枚举的for循环中使用List.pop时,该过程在到达列表末尾之前终止。我该如何避免弹出框缩短该过程?
我已经检查过,如果我使用pop编写循环但没有枚举,那么它将按预期工作。同样,如果我删除pop并使用enumerate做其他事情,它也可以按预期工作。
代码如下:
x=[0,2,4,6,8,10]
for i in enumerate(x):
x.pop(0)
print(x)
我希望打印以下内容:
[2,4,6,8,10]
[4,6,8,10]
[6,8,10]
[8,10]
[10]
[]
相反,我收到
[2,4,6,8,10]
[4,6,8,10]
[6,8,10]
如果我再次运行它,我会收到
[8,10]
[10]
如果我再次运行它,我会收到
[]
感谢您的帮助!
答案 0 :(得分:0)
使用range
例如:
x=[0,2,4,6,8,10]
for i in range(len(x)):
x.pop(0)
print(x)
输出:
[2, 4, 6, 8, 10]
[4, 6, 8, 10]
[6, 8, 10]
[8, 10]
[10]
[]
注意:在迭代过程中修改列表不是一个好习惯。