python List循环时候防止漏删除的方法

list1=[1,2,3,4,5]
print list1   # [1, 2, 3, 4, 5]

for in list1:
    if i==or i==3:
        list1.remove(i)

print list1  #[1, 3, 4, 5]

要删除2,3元素但实际没有删掉3,因为在删2时候,2后面的元素向前移动了一位,所有漏掉3了。

解决办法:

list1=[1,2,3,4,5]
lt2=[]
print list1   # [1, 2, 3, 4, 5]

for in list1:
    if i==or i==3:
        lt2.append(i)

for in lt2:
    list1.remove(i)
print list1  #[1, 4, 5]


猜你喜欢

转载自blog.csdn.net/xin_yun_jian/article/details/80821071