Python 提供了以下方法来移除一个或多个元素。通过指定索引位置,我们可以使用 del 关键字删除元素。让我们了解以下方法。
- 移除()
- 流行音乐()
- 清除()
- 是吗
- 列表推导-如果指定的条件匹配。
remove()方法
remove()方法用于从列表中移除指定的值。它接受项目值作为参数。让我们理解下面的例子。
示例-
list1 = ['Joseph', 'Bob', 'Charlie', 'Bob', 'Dave']
print("The list is: ", list1)
list1.remove('Joseph')
print("After removing element: ",list1)
输出:
The list is: ['Joseph', 'Bob', 'Charlie', 'Bob', 'Dave']
After removing element: ['Bob', 'Charlie', 'Bob', 'Dave']
如果列表包含多个同名项目,它将删除该项目的第一个匹配项。
示例-
list1 = ['Joseph', 'Bob', 'Charlie', 'Bob', 'Dave']
print("The list is: ", list1)
list1.remove('Bob')
print("After removing element: ",list1)
输出:
The list is: ['Joseph', 'Bob', 'Charlie', 'Bob', 'Dave']
After removing element: ['Joseph', 'Charlie', 'Bob', 'Dave']
pop()方法
pop() 方法删除指定索引位置的项目。如果我们没有指定索引位置,那么它将从列表中删除最后一项。让我们理解下面的例子。
示例-
list1 = ['Joseph', 'Bob', 'Charlie', 'Bob', 'Dave']
print("The list is: ", list1)
list1.pop(3)
print("After removing element: ",list1)
# index position is omitted
list1.pop()
print("After removing element: ",list1)
输出:
The list is: ['Joseph', 'Bob', 'Charlie', 'Bob', 'Dave']
After removing element: ['Joseph', 'Bob', 'Charlie', 'Dave']
After removing element: ['Joseph', 'Bob', 'Charlie']
我们也可以指定负指数位置。索引-1 代表列表的最后一项。
示例-
list1 = ['Joseph', 'Bob', 'Charlie', 'Bob', 'Dave']
print("The list is: ", list1)
# Negative Indexing
list1.pop(-2)
print("After removing element: ",list1)
输出:
The list is: ['Joseph', 'Bob', 'Charlie', 'Bob', 'Dave']
After removing element: ['Joseph', 'Bob', 'Charlie', 'Dave']
clear()方法
clear()方法从列表中移除所有项目。它返回空列表。让我们理解下面的例子。
示例-
list1 = [10, 20, 30, 40, 50, 60]
print(list1)
# It will return the empty list
list1.clear()
print(list1)
输出:
[10, 20, 30, 40, 50, 60]
[]
德尔声明
我们可以使用 del 关键字删除列表项。它删除指定的索引项。让我们理解下面的例子。
示例-
list1 = [10, 20, 30, 40, 50, 60]
print(list1)
del list1[5]
print(list1)
del list1[-1]
print(list1)
输出:
[10, 20, 30, 40, 50, 60]
[10, 20, 30, 40, 50]
[10, 20, 30, 40]
它可以删除整个列表。
del list1
print(list1)
输出:
Traceback (most recent call last):
File "C:/Users/DEVANSH SHARMA/PycharmProjects/Practice Python/first.py", line 14, in print(list1)
NameError: name 'list1' is not defined
我们也可以使用带有切片操作符的 del 从列表中删除多个项目。让我们理解下面的例子。
示例-
list1 = [10, 20, 30, 40, 50, 60]
print(list1)
del list1[1:3]
print(list1)
del list1[-4:-1]
print(list1)
del list1[:]
print(list1)
输出:
[10, 20, 30, 40, 50, 60]
[10, 40, 50, 60]
[60]
[]
使用列表推导
列表推导与从列表中移除项目的方式略有不同。它删除那些满足给定条件的项目。例如-要从给定列表中删除偶数,我们将条件定义为 i % 2,它将给出提醒 2,并删除提醒为 2 的项目。
让我们理解下面的例子。
示例-
list1 = [11, 20, 34, 40, 45, 60]
# Remove the odd numbers
print([i for i in list1 if i % 2 == 0])
#Remove the even numbers
print([i for i in list1 if i % 2 != 0])
输出:
[20, 34, 40, 60]
[11, 45]