Menu Close

Python List 删除元素clear,pop,remove,del

Python List数据类型可帮助您按顺序存储不同数据类型的项目。数据写在方括号[]内,值之间用逗号,分隔。

在Python中,list数据类型上有许多可用的方法可帮助您从给定列表中删除元素。remove,popclear

除此之外,您还可以使用del关键字从list中删除项目。

在此Python教程中,您将学习:

  • Python remove方法
  • Python pop方法
  • Python clear方法
  • 使用del关键字
  • 删除第一个元素
  • 删除多个元素
  • 使用索引删除元素

例子:

my_list = ['中国', 5000, 71.5, '美国', 245, ['A', 'B', 'C']]

索引从0开始。在列表中:my_list位于

0索引,我们有字符串’中国’,

  • 在索引:1处,数字5000,它是一个整数。
  • 在索引:2处,浮点数71.5
  • 在索引:3处,字符串“ 美国”。
  • 在索引:4处,数字245,它是一个整数。
  • 在索引:5处,list A,B和C。

Python remove方法

Python remove方法是list内置方法。这有可以从list中删除给定的第一个元素匹配。

语法:

list.remove(element)

您要从list中删除的元素。

返回值

该方法没有返回值。

使用remove方法:

以下是使用remove方法时要记住的要点:

  • 当list中有重复的元素时,元素匹配的第一个元素删除。
  • 如果给定元素不存在,将抛出错误
  • remove方法不返回任何值。
  • remove将值作为参数,因此必须使用正确的数据类型传递值。

示例:使用remove方法从list中删除元素

my_list = [12, '张三', '李四', 14, '王五', 12, '王五']
my_list.remove(12) 
print(my_list)
my_list.remove('王五') 
print(my_list)
my_list.remove(100) 
print(my_list)

Output:

['张三', '李四', 14, '王五', 12, '王五']
['张三', '李四', 14, 12, '王五']
Traceback (most recent call last):
File "C:/Users/Administrator/PycharmProjects/firstProject/test.py", line 6, in <module>
my_list.remove(100)
ValueError: list.remove(x): x not in list

Python pop方法

pop方法根据索引从list中删除一个元素。

语法:

list.pop(index)

index:pop方法只有一个称为index的参数。

  • 要从列表中删除元素,您需要传递元素的索引。索引从0开始。要从列表中获取第一个元素,请将索引传递为0。要删除最后一个元素,索引为-1。
  • index参数是可选的。如果未传递,则将默认值视为-1,并返回列表中的最后一个元素。
  • 如果给定的索引不存在或超出范围,则pop()方法将引发错误,提示IndexError:pop index。

返回值:

pop方法将根据索引返回删除的元素。最终列表也会更新,并且不会包含元素。

示例:使用pop方法删除元素

尝试使用基于以下内容的pop方法删除元素:

  • 通过给出索引
  • 没有索引
  • 传递索引超出范围。
my_list = [12, 'Siya', 'Tiya', 14, 'Riya', 12, 'Riya']

name = my_list.pop(2)
print(name)
print(my_list)

item = my_list.pop()
print(item)
print(my_list)

item = my_list.pop(15)
print(item)
print(my_list)

Output:

Tiya
[12, 'Siya', 14, 'Riya', 12, 'Riya']
Riya
[12, 'Siya', 14, 'Riya', 12]
IndexError: popindex out of range

Python clear方法

clear方法将删除list中所有元素。

语法:

list.clear()

参数:无

返回值:无

示例:使用clear方法删除所有元素

my_list = [12, 'Siya', 'Tiya', 14, 'Riya', 12, 'Riya']

element = my_list.clear()
print(element)
print(my_list)

Output:

None
[]

使用del关键字

语法:

del list[index]

您还可以使用del关键字中切片元素

语法:

my_list = list(range(15))
print(my_list)

del my_list[0]
print(my_list)

del my_list[-1]
print(my_list)

del my_list[5]
print(my_list)

del my_list[-2]
print(my_list)

del my_list[1:5]
print(my_list)

del my_list[4:]
print(my_list)

Output:

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13]
[1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 12, 13]
[1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13]
[1, 7, 8, 9, 10, 11, 13]
[1, 7, 8, 9]

如何在Python中从列表中删除多个元素?

remove和pop用于删除单个元素。要删除多个,使用del关键字。

my_list2 = ['A', 'B', 'C', 'D', 'E', 'F']
del my_list2[1:4]
print(my_list2)

Output:

['A', 'E', 'F']

如何在Python中使用索引从列表中删除元素?

要基于索引删除元素,可以使用pop()或者del关键字。

my_list1 = ['A', 'B', 'C', 'D', 'E', 'F']
element = my_list1.pop(2)
print(my_list1)

my_list2 = ['A', 'B', 'C', 'D', 'E', 'F']
del my_list2[2]
print(my_list2)

output:

['A', 'B', 'D', 'E', 'F']
['A', 'B', 'D', 'E', 'F']

list内置删除方法

方法 描述
remove 删除最先匹配的元素。
pop pop方法根据给定的索引删除元素。
clear clear方法删除所有元素。

python系列教程目录

Posted in Python

发表评论

相关链接