持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第18天,点击查看活动详情
pop(),remove(),clear()
这三个方法用于删除列表中的元素,其中pop()用于删除并返回指定位置(默认是最后一个)上的元素,如果指定的位置不是合法的索引则抛出异常,对空列表调用pop()方法也会抛出异常;remove()用于删除列表中第一个值与指定值相等的元素,如果列表中不存在该元素则抛出异常;clear() 用于清空列表中的所有元素。这3个方法也属于原地操作,不影响列表对象的内存地址。另外,还可以使用del命令删除列表中指定位置的元素,这个方法同样也属于原地操作。
>>> x=[1,2,3,4,5,6,7]
>>> x.pop() #弹出并返回尾部元素
7
>>> x.pop(0) #弹出并返回指定位置的元素
1
>>> x.clear() #删除所有元素
>>> x
[]
>>> x=[1,2,1,1,2]
>>> x.remove(2) #删除首个值为2的元素
>>> del x[3] #删除指定位置上的元素
>>> x
[1,1,1]
必须强调的是,由于列表具有内存自动收缩和扩张功能,在列表中间位置插入或删除元素时,不仅效率较低,而且该位置后面所有元素在列表中的索引也会发生变化,必须牢牢记住这一点。
count(),index()
列表方法count()用于返回列表中指定元素出现的次数;index()用于返回指定元素在列表中首次出现的位置,如果该元素不在列表中则抛出异常。
>>> x=[1,2,2,3,3,3,4,4,4,4]
>>> x.count(3) #元素3在列表x中的出现次数
3
>>> x.count(5) #不存在,返回0
0
>>> x.index(2) # 元素2在列表x中首次出现的索引
1
>>> x.index(5) #列表x中没有5,抛出异常
ValueError:5 is not in list
当列表抛出异常
- 使用选择结构确保列表中存在指定元素再强调有关的方法