一、概念
remove()函数用于移除列表中某个值的第一个匹配项。
二、语法
list.remove(obj)
参数:obj – 列表中要移除的对象。
返回值:该方法没有返回值但是会移除列表中的某个值的第一个匹配项。
三、实例
aList = [123, ‘xyz’, ‘zara’, ‘abc’, ‘xyz’]
aList.remove('xyz')
print("List : ", aList)
aList.remove('abc');
print("List : ", aList)
输出:
List : [123, 'zara', 'abc', 'xyz']
List : [123, 'zara', 'xyz']
四、补充
a = [1, 2, 3, 4, 5]
for i in a:
print("i =",i)
if i != 2:
a.remove(i)
print("移除的i是:%s" % i)
print(a)
print("最后的结果:%s" % a)
输出:
python
i = 1
移除的i是:1
[2, 3, 4, 5]
i = 3
移除的i是:3
[2, 4, 5]
i = 5
移除的i是:5
[2, 4]
最后的结果:[2, 4]
remove方法用于移除列表中某个值的第一个匹配,这个没错。但是在上述例子中,第一次循环时,i=1,因此移除1,此时list为:[2,3,4,5]
此时索引为0的元素已经变成了2,而不再是1,而循环会从索引为1的元素开始,此时 i=3,然后根据 if 的判断,3会被remove掉,此时list为:[2,4,5],元素 4 的索引位置迁移,循环再次开启,从索引为2 的地方开始,即 5,再remove掉,故此最后遗留下来的list是:[2, 4]
参考:https://blog.csdn.net/qq_44034384/article/details/107348512