python的for循环存在漏删的情况
在平常我们在添加、修改、删除ist元素时,都会使用到for循环,在添加、修改元素时,使用for循环都是没有问题的,而在使用for循环删除元素时,就会存在只将要删除的第一个元素删除,而后面要删除的元素,都没有被删除,这是很恶心的,
首先我先写一些平常我们使用的方法:
a=[1,"None",2,3,4,"None"]
for i in a:
if i == "None":
a.remove(i)
print(a)
这种办法显然是行不通的,只将第一个None删除了,而后面那个并没有被删除
现在我来写一下正确的方法,其实还有一种方法,这个只是其中的一种,另一种方法我忘记了,等有时间来补上
a=[1,"None",2,3,4,"None"]
for j in range(len(a)):
for i in a:
if i == "None":
a.remove(i)
print(a)
这样就会将列表中的"None"全部删除了。