pop()、remove()、clear() 这 3 个方法用于删除列表中的元素。
① pop() 用于删除并返回指定位置(默认是最后一个)上的元素,如果指定的位置不是合法的索引则抛出异常,对空列表调用 pop() 方法也会抛出异常。
② remove() 用于删除列表中第一个值与指定值相等的元素,如果列表中不存在该元素则抛出异常。
③ clear() 用于清空列表中的所有元素。
这 3 个方法也属于原地操作,不影响列表对象的内存地址。
另外,还可以使用 del 命令删除列表中指定位置的元素,这个方法同样也属于原地操作。
x = [1, 2, 3, 4, 5, 6, 7, 128, 128, 64, 127, 127, 8]
print(x)print(x.pop()) # 弹出并返回尾部元素
print(x)print(x.pop(0)) # 弹出并返回指定位置上的元素
print(x)x.remove(128) # 删除首个值为128的元素
print(x)del x[-1] # 删除指定位置上的元素
print(x)x.clear() # 删除所有元素
print(x)
由于列表具有内存自动收缩和扩张功能,在列表中间位置插入或删除元素时,不仅效率较低,而且该位置后面所有元素在列表中的索引也会发生变化。