2020-01-21

邮差的信 提交于 2020-01-21 15:42:51

pop()删除元素
要将元素从列表中删除,并接着使用它的值。例如,获取刚被射杀的外星人的x和y坐标,使在相应的位置显示爆炸效果;在Web应用程序中,可能要将用户从活跃成员列表中删除,并将其加到非活跃成员列表中。
pop()可删除列表末尾的元素,并能够接着使用它。术语弹出(pop)源自这样的类比:列表就像一个栈,而删除列表末尾的元素相当于弹出栈顶元素。
下面从列表motorcycles中弹出一款摩托车:
motorcycles = [‘honda’, ‘yamaha’, ‘suzuki’]
print(motorcycles)
popped_motorcycle = motorcycles.pop()
print(motorcycles)
print(popped_motorcycle)
[‘honda’, ‘yamaha’, ‘suzuki’]
[‘honda’, ‘yamaha’]
suzuki
pop()是怎么起作用的?假设列表中的摩托车是按购买时间存储的,可使用方法pop()打印一条消息,指出最后购买的是哪款摩托车:
motorcycles = [‘honda’, ‘yamaha’, ‘suzuki’]
last_owned = motorcycles.pop()
print("The last motorcycle I owned was a " + last_owned.title() + “.”)
The last motorcycle I owned was a Suzuki.
弹出列表中任何位置处的元素
可以使用pop()来删除列表中任何位置的元素,只需在括号中指定要删除的元素的索引。
motorcycles = [‘honda’, ‘yamaha’, ‘suzuki’]
first_owned = motorcycles.pop(0)
print('The first motorcycle I owned was a ’ + first_owned.title() + ‘.’)
The first motorcycle I owned was a Honda.
每当使用pop()时,被弹出的元素就不再在列表中。
如果不确定该使用del语句还是pop()方法,判断标准:如果要从列表中删除一个元素,且不再以任何方式使用它,就使用del语句;如果要在删除元素后还能继续使用它,就使用方法pop()。
根据值删除元素
有时候,不知道从列表中删除的值所处的位置。只知道要删除的元素的值,使用remove()。

从列表motorcycles中删除值’ducati’。
motorcycles = [‘honda’, ‘yamaha’, ‘suzuki’, ‘ducati’]
print(motorcycles)
motorcycles.remove(‘ducati’)
print(motorcycles)
[‘honda’, ‘yamaha’, ‘suzuki’, ‘ducati’]
[‘honda’, ‘yamaha’, ‘suzuki’]
使用remove()从列表中删除元素时,也可接着使用它的值。
motorcycles = [‘honda’, ‘yamaha’, ‘suzuki’, ‘ducati’]
print(motorcycles)
too_expensive = ‘ducati’
motorcycles.remove(too_expensive)
print(motorcycles)
print("\nA " + too_expensive.title() + " is too expensive for me.")
[‘honda’, ‘yamaha’, ‘suzuki’, ‘ducati’]
[‘honda’, ‘yamaha’, ‘suzuki’]
A Ducati is too expensive for me.
方法remove()只删除第一个指定的值。如果要删除的值可能在列表中出现多次,就需要使用循环来判断是否删除了所有这样的值。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!