names_friends=["Juan","Efren","Kiki", "Esmoris", "Diego", "Nando"]
for i in names_friends:
print(i)
names_friends.remove(i)
print(names_friends)
运行此代码后,我得到了。
Juan
Kiki
Diego
['Efren', 'Esmoris', 'Nando']
如果有人能向我解释为什么它不能删除列表中的所有项目,我将不胜感激。谢谢
答案 0 :(得分:1)
您正在更改可迭代的,同时对其进行迭代。因此,一旦从其中删除一个对象,它可能会跳过下一个对象。
如果您遍历副本,此问题将消失,例如
for i in names_friends[:]:
print(i)
names_friends.remove(i)