Python里面,对于list删除元素有以下场景:
根据元素所在位置删除,可使用del或者pop方法
根据元素值进行删除,可使用remove方法
清空列表,使用clear方法
根据位置删除列表元素
使用del方法删除
del语法:del 列表名[开始位置:结束位置:步长]
示例:
删除列表中偶数位置的元素
>>> l = ['a','b','c','d','e','f','g','h','i']
>>> del l[1::2]
>>> l
['a', 'c', 'e', 'g', 'i']
>>>
使用del方法删除列表元素时,超出列表长度则报错:
>>> del l[20]
Traceback (most recent call last):
File "", line 1, in
IndexError: list assignment index out of range
>>>
使用pop方法删除
语法:列表名.pop(位置)
示例:
删除位置3上的元素:
>>> l = ['a','b','c','d','e','f','g','h','i']
>>> l.pop(3)
'd'
>>>
pop方法每次只删除一个元素,且返回被删除的元素,如果超出列表长度则报错
>>> l.pop(20)
Traceback (most recent call last):
File "", line 1, in
IndexError: pop index out of range
>>>
根据元素值删除
删除列表中指定元素值元素时使用remove方法,语法:列表名.remove(要删除的值)
示例
>>> l = ['a','b','c','a','e','b','g','c','i']
>>> l.remove('c')
>>> l
['a', 'b', 'a', 'e', 'b', 'g', 'c', 'i']
>>>
当列表中有重复元素的时候,是用remove方法只会删除首次出现的元素,若要删除的元素在列表中不存在,则报错
>>> l = ['a','b','c','a','e','b','g','c','i']
>>> l.remove('t')
Traceback (most recent call last):
File "", line 1, in
ValueError: list.remove(x): x not in list
>>>
清空列表
清空列表使用clear方法,语法:列表名.clear()
示例:
>>> l = ['a','b','c','a','e','b','g','c','i']
>>> l.clear()
>>> l
[]
>>>