Python list pop方法:弹出列表内的元素
·
目录
描述
使用list.pop()方法获取并删除非空列表中指定位置的元素。如果你为pop()方法指定了偏移量,它会返回并删除偏移量对应位置的元素;如果不指定,则默认使用-1,即列表的最后一个元素。
语法和参数
list.pop(offset)
名称 | 含义 | 备注 |
offset | 列表中获取并移除元素的偏移量 | 整型参数,可省略,省略时默认为-1 |
返回值
object. 即列表偏移量为offset对应的元素。
使用示例
省略offset
当offset省略时,默认值为-1,即弹出并返回列表的最后一个元素。
>>> demo = ["Nokia", "Huawei", "Apple", "Intel", "Lenovo"]
>>> data = demo.pop()
>>> data
'Lenovo'
>>> demo
['Nokia', 'Huawei', 'Apple', 'Intel']
弹出指定位置的元素
可以使用offset指定删除某个位置的元素:
>>> demo = ["Shanghai", "Beijing", "Shenzhen", "Chongqing", "Guangzhou"]
>>> data = demo.pop(0)
>>> data
'Shanghai'
>>> demo
['Beijing', 'Shenzhen', 'Chongqing', 'Guangzhou']
注意事项
使用非整型参数
当offset的值为非整型时,pop()方法抛出TypeError异常。元素弹出失败。
>>> demo
['Beijing', 'Shenzhen', 'Chongqing', 'Guangzhou']
>>> data = demo.pop('0')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'str' object cannot be interpreted as an integer
空列表调用
空列表调用pop()方法时,pop()方法抛出IndexError并报错pop from empty list
>>> demo = []
>>> demo.pop()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: pop from empty list
索引越界
当offset的值超出列表长度的最大值,pop()方法抛出IndexError,元素弹出失败。
>>> demo = ["Pod", "ConfigMap", "Namespace"]
>>> demo.pop(6)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: pop index out of range
>>> demo.pop(-6)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: pop index out of range
>>> demo
['Pod', 'ConfigMap', 'Namespace']
pop、remove与del
Python的list方法pop、remove与del语句都有删除列表中元素的功能。现在对它们做一个分析比对:
pop | 按照索引删除列表中的元素,并将删除的元素返回。 |
remove | 不确定或不关心元素在列表中的位置,remove根据指定值删除元素 |
del | 与pop类似,按照索引删除列表中的元素。但是不返回删除的元素。此外pop属于列表方法,而del属于Python语句。 |
更多推荐
已为社区贡献11条内容
所有评论(0)