Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/315.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
for循环和列表。remove()不';t在python中删除列表中的所有项_Python_List_For Loop - Fatal编程技术网

for循环和列表。remove()不';t在python中删除列表中的所有项

for循环和列表。remove()不';t在python中删除列表中的所有项,python,list,for-loop,Python,List,For Loop,运行完这个代码后,我得到了这个 names_friends=["Juan","Efren","Kiki", "Esmoris", "Diego", "Nando"] for i in names_friends: print(i) names_friends.remove(i) print(names_friends) 如果有人能向我解释为什么它没有删除列表中的所有项目,我将不胜感激。谢谢你在迭代iterable时更改了iterable。因此,一旦您从中删除一个对象,它可能会

运行完这个代码后,我得到了这个

names_friends=["Juan","Efren","Kiki", "Esmoris", "Diego", "Nando"]
for i in names_friends:
    print(i)
    names_friends.remove(i)

print(names_friends)

如果有人能向我解释为什么它没有删除列表中的所有项目,我将不胜感激。谢谢你在迭代iterable时更改了iterable。因此,一旦您从中删除一个对象,它可能会跳过下一个对象

如果您迭代一个副本,这个问题就会消失,例如

Juan
Kiki
Diego
['Efren', 'Esmoris', 'Nando']

在迭代ittry时更改列表确实不是一个好主意
for i in names_friends[:]:
    print(i)
    names_friends.remove(i)