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


Posted in Python onJuly 24, 2017

本文实例讲述了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基于list的append和pop方法实现堆栈与队列功能示例

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

Python 相关文章推荐
python判断一个集合是否包含了另外一个集合中所有项的方法
Jun 30 Python
python使用matplotlib模块绘制多条折线图、散点图
Apr 26 Python
攻击者是如何将PHP Phar包伪装成图像以绕过文件类型检测的(推荐)
Oct 11 Python
Python3爬虫教程之利用Python实现发送天气预报邮件
Dec 16 Python
pandas dataframe添加表格框线输出的方法
Feb 08 Python
基于python的ini配置文件操作工具类
Apr 24 Python
python实现给微信指定好友定时发送消息
Apr 29 Python
python读文件的步骤
Oct 08 Python
python每5分钟从kafka中提取数据的例子
Dec 23 Python
pytorch VGG11识别cifar10数据集(训练+预测单张输入图片操作)
Jun 24 Python
详解用python -m http.server搭一个简易的本地局域网
Sep 24 Python
matplotlib grid()设置网格线外观的实现
Feb 22 Python
老生常谈进程线程协程那些事儿
Jul 24 #Python
Django模板变量如何传递给外部js调用的方法小结
Jul 24 #Python
详解Python list 与 NumPy.ndarry 切片之间的对比
Jul 24 #Python
apache部署python程序出现503错误的解决方法
Jul 24 #Python
Python元组操作实例分析【创建、赋值、更新、删除等】
Jul 24 #Python
Python实现购物程序思路及代码
Jul 24 #Python
python实现上传下载文件功能
Nov 19 #Python
You might like
php实现12306火车票余票查询和价格查询(12306火车票查询)
2014/01/14 PHP
jquery 滚动条事件简单实例
2013/07/12 Javascript
JavaScript实现的使用键盘控制人物走动实例
2014/08/27 Javascript
jQuery中:last-child选择器用法实例
2014/12/31 Javascript
JavaScript对象数组的排序处理方法
2015/10/21 Javascript
jQuery移动web开发之页面跳转和加载外部页面的实现
2015/12/04 Javascript
jQuery实现可以编辑的表格实例详解【附demo源码下载】
2016/07/09 Javascript
JS中用try catch对代码运行的性能影响分析
2016/12/26 Javascript
JS实现含有中文字符串的友好截取功能分析
2017/03/13 Javascript
利用原生JavaScript实现造日历轮子实例代码
2019/05/08 Javascript
js实现可爱的气泡特效
2020/09/05 Javascript
利用JavaScript为句子加标题的3种方法示例
2021/01/05 Javascript
python通过ftplib登录到ftp服务器的方法
2015/05/08 Python
Python使用一行代码获取上个月是几月
2018/08/30 Python
基于Python执行dos命令并获取输出的结果
2019/12/30 Python
如何用Anaconda搭建虚拟环境并创建Django项目
2020/08/02 Python
CSS3之边框多颜色Border-color属性使用示例
2013/10/11 HTML / CSS
实例教程 纯CSS3打造非常炫的加载动画效果
2014/11/05 HTML / CSS
利用HTML5 Canvas制作键盘及鼠标动画的实例分享
2016/03/15 HTML / CSS
伦敦著名的运动鞋综合商店:Footpatrol
2019/03/25 全球购物
EMU Australia澳大利亚官网:澳大利亚本土雪地靴品牌
2019/07/24 全球购物
卫校中专生个人自我评价
2013/09/19 职场文书
幼儿园实习自我鉴定
2013/12/15 职场文书
科研先进个人典型材料
2014/01/31 职场文书
《蜗牛》教学反思
2014/02/18 职场文书
四群教育工作实施方案
2014/03/26 职场文书
小学生操行评语
2014/04/22 职场文书
九一八事变演讲稿
2014/09/05 职场文书
民主评议党员自我评价材料
2014/09/18 职场文书
房屋买卖委托书格式范本格式
2014/10/13 职场文书
机关作风建设心得体会
2014/10/22 职场文书
上课说话检讨书
2015/01/27 职场文书
未中标通知书
2015/04/17 职场文书
中学后勤工作总结2015
2015/07/22 职场文书
《百分数的认识》教学反思
2016/02/19 职场文书
nginx安装以及配置的详细过程记录
2021/09/15 Servers