首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

python干货:pop函数的用法【弹出删除功能】

什么是弹出功能?

使用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]

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20201204A0DGP400?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券