什么是弹出功能?
使用pop()删除元素是将元素从列表中删弹出,术语弹出(pop)源自这样的类比:列表像一个栈,而删除列表末尾的元素就相当于弹出栈顶元素
方法pop()删除并返回列表中的最后一个元素。 有一个可选参数,它是要从列表中删除的元素的索引。 如果未指定索引,则a.pop()删除并返回列表中的最后一项。 如果传递给pop()方法的索引不在范围内,则会引发IndexError:pop index out of range异常。
这里需要注意的是,当我们使用pop函数时,当后面的括号没有写位置的时候,系统默认是选择最后的一个位置进行删除的。
利用(pop)将删除的列表元素进行存储motorcycles=['honda','yamaha','suzuki']
print(motorcycles)#定义并打印列表元素
popped_motorcycles=motorcycles.pop()#将删除的数据存储在popped_中
print(motorcycles)
print(popped_motorcycles)
输出:
pop() 函数用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值。
语法:list.pop(obj=list[-1]) //默认为 index=-1,删除最后一个列表值。
obj -- 可选参数,要移除列表元素的对象。
该方法返回从列表中移除的元素对象。
sentence=['All', 'good', 'things', 'come', 'to' ,'those', 'who', 'wait.']
print("默认为 index=-1,删除最后一个列表值:",sentence.pop(-1),"\n")
print("默认删除最后一个列表值: ",sentence.pop(),"\n")
print("删除第一个元素:",sentence.pop(0),"\n")
print("删除第三个元素:",sentence.pop(2),"\n")
print("输出剩余元素:",sentence)
运行结果为:(该方法返回从列表中移除的元素对象。)每执行print()一下就移除一个
二、 单独执行每一行print()函数:
sentence=['All','good','things','come','to','those','who','wait']
print("默认为 index=-1,删除最后一个列表值:",sentence.pop(-1),"\n")
sentence1=['All','good','things','come','to','those','who','wait']
print("默认删除最后一个列表值:",sentence1.pop(),"\n")
sentence2=['All','good','things','come','to','those','who','wait']
print("删除第一个元素:",sentence2.pop(0),"\n")
sentence3=['All','good','things','come','to','those','who','wait']
print("删除第三个元素:",sentence3.pop(1),"\n")
运行结果如下:
基本堆栈功能
pop()方法通常与append()结合使用,以在Python应用程序中实现基本的堆栈功能。
stack = []
for i in range(5):
stack.append(i)
while len(stack):
print(stack.pop())
List方法非常容易地将列表用作堆栈,其中添加的最后一个元素是检索到的第一个元素(“后入先出”)。若要将项添加到堆栈顶部,请使用append()。若要从堆栈顶部检索项,请使用pop()没有明确的索引。例如:
>>> stack = [3, 4, 5]
>>> stack.append(6)
>>> stack.append(7)
>>> stack
[3, 4, 5, 6, 7]
>>> stack.pop()
7
>>> stack
[3, 4, 5, 6]
>>> stack.pop()
6
>>> stack.pop()
5
>>> stack
[3, 4]
领取专属 10元无门槛券
私享最新 技术干货