Python列表中remove()方法,您真的会用吗?

前言:本博文讲解了Python列表中remove()的概念、用法以及注意事项。

文章目录

    • 一、概念
    • 二、语法
    • 三、实例
    • 四、补充

一、概念

remove()函数用于移除列表中某个值的第一个匹配项。

二、语法

list.remove(obj)
  • 参数:obj – 列表中要移除的对象。

  • 返回值:该方法没有返回值但是会移除列表中的某个值的第一个匹配项。

三、实例

aList = [123, 'xyz', 'zara', 'abc', 'xyz']

aList.remove('xyz')
print("List : ", aList)
aList.remove('abc');
print("List : ", aList)

在这里插入图片描述

四、补充

  1. 首先让我们共同看一下这个程序:
a=[1,2,3,4,5]
for i in a:
    if i != 2:
        a.remove(i)
print(a)
  1. 按照我们的常规想法:remove的作用是将list中的元素移除掉,那么这一次的输出必然是[2]
  2. 执行一下程序,验证猜想,如下:

在这里插入图片描述
这是为什么呢?下来让我们进行分析:

  • remove方法用于移除列表中某个值的第一个匹配,这个没错。但是在上述例子中,第一次循环时,i=1,因此移除1,此时list为:[2,3,4,5]
  • 此时索引为0的元素已经变成了2,而不再是1,而循环会从索引为1的元素开始,此时 i=3,然后根据 if 的判断,3会被remove掉,元素 4 的索引位置再往前变为2,循环再次开启,从索引为 3 的地方开始,即 5,再remove掉,故此最后遗留下来的list是:[2, 4]

特别注意:True 和 1 是等同的,False 和 0 是等同的,甚至 True 和 False 也可以进行算术运算。我们在操作元素时,要特别小心!

你可能感兴趣的:(Python)