Python基于list的append和pop方法实现堆栈与队列功能示例

发布时间 - 2026-01-11 02:28:59    点击率:

本文实例讲述了Python基于list的append和pop方法实现堆栈与队列功能。分享给大家供大家参考,具体如下:

#coding=utf8
'''''
堆栈:
堆栈是一个后进先出(LIFO)的数据结构。
在栈上"push"元素是个常用术语,意思是把一个对象添加到堆栈中。
删除一个元素,可以把它"pop"出堆栈。
队列:
队列是一种先进先出(FIFO)的数据类型。
新的元素通过"入队"的方式添加进队列的末尾,
"出对"就是从队列的头部删除。
'''
#创建列表
def creatList():
  initList=[]
  try:
    while True:
      #从键上输入元素
      inputItem=raw_input(u"Enter item(输入quit结束输入):")
      #当输入字符不是quit,把元素加入列表
      #当输入字符是quit,结束输入
      if inputItem!="quit":
        initList.append(inputItem.strip())
      else:
        break
    #返回输入列表
    return initList
  except Exception,e:
    print "Create List Error:",e
#删除列表的第一个元素并返回删除元素
def popTheFirst(List):
  try:
    #判断列表中是否存在元素
    #如果存在元素,删除并返回第一个元素
    #如果不存在,给出提示信息
    if len(List)>0:
      return List.pop(0)
    else:
      print "The list is empty..."
  except Exception,e:
    print "pop the first item Error:",e
#删除列表的最后元素并返回删除元素
def popTheLast(List):
  try:
    #判断列表中是否存在元素
    #如果存在元素,删除并返回最后元素
    #如果不存在,给出提示信息
    if len(List)>0:
      #pop函数默认删除最后一个元素
      return List.pop()
    else:
      print "The list is empty..."
  except Exception,e:
    print "pop the last item Error:",e
#调用creatList函数创建表
listOne=creatList()
#输出创建表信息
print "The init list :",listOne
#调用popTheFirst函数删除并返回第一个元素
theFirst=popTheFirst(listOne)
#输出当前表的第一个元素
print "The first item of list:",theFirst
#调用popTheFirst函数删除并返回最后一个元素
theLast=popTheLast(listOne)
#输出当前表的最后一个元素元素
print "The last item of list:",theLast
'''''
这里的listOne、theFirst、theLast都是全局变量
如果更改上述语句顺序会获取不到想要的结果。
'''

运行结果:

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数据结构与算法教程》、《Python加密解密算法与技巧总结》、《Python编码操作技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程》

希望本文所述对大家Python程序设计有所帮助。


# Python  # list  # append  # pop  # 堆栈  # 队列  # Python 实现数据结构-堆栈和队列的操作方法  # Python基于列表模拟堆栈和队列功能示例  # python实现堆栈与队列的方法  # Python中堆、栈、队列之间的区别小结  # 第一个  # 提示信息  # 数据结构  # 不存在  # 是否存在  # 都是  # 是一个  # 进阶  # 操作技巧  # 是个  # 是一种  # 相关内容  # 列表中  # 是从  # 把它  # 感兴趣  # 给大家  # 更多关于  # 所述  # 程序设计 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 浏览器如何快速切换搜索引擎_在地址栏使用不同搜索引擎【搜索】  音乐网站服务器如何优化API响应速度?  如何快速查询网址的建站时间与历史轨迹?  香港服务器网站生成指南:免费资源整合与高速稳定配置方案  胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?  Laravel如何使用Service Provider注册服务_Laravel服务提供者配置与加载  香港服务器租用费用高吗?如何避免常见误区?  音响网站制作视频教程,隆霸音响官方网站?  LinuxCD持续部署教程_自动发布与回滚机制  公司网站制作需要多少钱,找人做公司网站需要多少钱?  如何快速查询域名建站关键信息?  零服务器AI建站解决方案:快速部署与云端平台低成本实践  高端智能建站公司优选:品牌定制与SEO优化一站式服务  Windows驱动无法加载错误解决方法_驱动签名验证失败处理步骤  网站建设要注意的标准 促进网站用户好感度!  android nfc常用标签读取总结  米侠浏览器网页图片不显示怎么办 米侠图片加载修复  PHP 500报错的快速解决方法  如何快速搭建高效WAP手机网站吸引移动用户?  如何用AI帮你把自己的生活经历写成一个有趣的故事?  Laravel控制器是什么_Laravel MVC架构中Controller的作用与实践  Laravel的路由模型绑定怎么用_Laravel Route Model Binding简化控制器逻辑  ,交易猫的商品怎么发布到网站上去?  Win11关机界面怎么改_Win11自定义关机画面设置【工具】  如何用wdcp快速搭建高效网站?  Laravel如何配置.env文件管理环境变量_Laravel环境变量使用与安全管理  如何在香港服务器上快速搭建免备案网站?  JavaScript常见的五种数组去重的方式  Laravel如何使用软删除(Soft Deletes)功能_Eloquent软删除与数据恢复方法  深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?  如何撰写建站申请书?关键要点有哪些?  Laravel如何使用Eloquent进行子查询  如何基于云服务器快速搭建个人网站?  如何快速查询网站的真实建站时间?  做企业网站制作流程,企业网站制作基本流程有哪些?  想要更高端的建设网站,这些原则一定要坚持!  Laravel中间件如何使用_Laravel自定义中间件实现权限控制  Android okhttputils现在进度显示实例代码  Laravel API路由如何设计_Laravel构建RESTful API的路由最佳实践  Laravel如何创建自定义Facades?(详细步骤)  JavaScript Ajax实现异步通信  Win11怎么更改系统语言为中文_Windows11安装语言包并设为显示语言  千库网官网入口推荐 千库网设计创意平台入口  Win11怎么关闭资讯和兴趣_Windows11任务栏设置隐藏小组件  JavaScript中如何操作剪贴板_ClipboardAPI怎么用  laravel怎么实现图片的压缩和裁剪_laravel图片压缩与裁剪方法  linux top下的 minerd 木马清除方法  iOS正则表达式验证手机号、邮箱、身份证号等  标准网站视频模板制作软件,现在有哪个网站的视频编辑素材最齐全的,背景音乐、音效等?  如何注册花生壳免费域名并搭建个人网站?