编程语言
首页 > 编程语言> > Python遍历列表时其中的删除元素_CodingPark编程公园

Python遍历列表时其中的删除元素_CodingPark编程公园

作者:互联网

遍历列表时其中的删除元素

删除列表中的元素我们通常会用

.remove( )

因为删除元素后,整个列表的元素会往前移动,而i却是在最初就已经确定了,是不断增大的,所以并不能得到想要的结果。

所以会造成这样的问题

a = [1,2,3,4,5,6,7,8]
for i in a:
    if i>5:
        pass
    else:
        a.remove(i)
    print(a)

在这里插入图片描述

解决办法

遍历在新的列表操作,删除是在原来的列表操作

a = [1,2,3,4,5,6,7,8]
print(id(a)) 
print(id(a[:])) 
for i in a[:]:
    if i>5:
        pass
    else:
        a.remove(i)
    print(a)
print('-------------------------')
print(id(a))


在这里插入图片描述

在这里插入图片描述

标签:遍历,删除,Python,元素,remove,列表,print,CodingPark,id
来源: https://blog.csdn.net/weixin_38411989/article/details/113613657