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 图片验证码代码
Dec 07 Python
Python导出数据到Excel可读取的CSV文件的方法
May 12 Python
python变量不能以数字打头详解
Jul 06 Python
python机器学习实战之K均值聚类
Dec 20 Python
python通过微信发送邮件实现电脑关机
Jun 20 Python
如何使用Python多线程测试并发漏洞
Dec 18 Python
Python递归及尾递归优化操作实例分析
Feb 01 Python
Python实现ATM系统
Feb 17 Python
tensorflow 动态获取 BatchSzie 的大小实例
Jun 30 Python
python中逻辑与或(and、or)和按位与或异或(&、|、^)区别
Aug 05 Python
使用jupyter notebook运行python和R的步骤
Aug 13 Python
Python中time与datetime模块使用方法详解
Mar 31 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 数字左侧自动补0
2008/03/31 PHP
PHP curl模拟浏览器采集阿里巴巴的实现代码
2011/04/20 PHP
PHP求最大子序列和的算法实现
2011/06/24 PHP
使用PHP实现蜘蛛访问日志统计
2013/07/05 PHP
php中使用GD库做验证码
2016/03/31 PHP
php多进程并发编程防止出现僵尸进程的方法分析
2020/02/28 PHP
Jquery Ajax学习实例 向页面发出请求,返回XML格式数据
2010/03/14 Javascript
解析DHTML,JavaScript,DOM,BOM以及WEB标准的描述
2013/06/19 Javascript
Javascript中各种trim的实现详细解析
2013/12/10 Javascript
利用JS判断用户是否上网(连接网络)
2013/12/23 Javascript
jQuery ui实现动感的圆角渐变网站导航菜单效果代码
2015/08/26 Javascript
vue省市区三联动下拉选择组件的实现
2017/04/28 Javascript
Vuejs 单文件组件实例详解
2018/02/09 Javascript
JS数组实现分类统计实例代码
2018/09/30 Javascript
详解VUE项目中安装和使用vant组件
2019/04/28 Javascript
学习RxJS之JavaScript框架Cycle.js
2019/06/17 Javascript
vue + elementUI实现省市县三级联动的方法示例
2019/10/29 Javascript
基于vue+uniapp直播项目实现uni-app仿抖音/陌陌直播室功能
2019/11/12 Javascript
JS造成内存泄漏的几种情况实例分析
2020/03/02 Javascript
Python实现的金山快盘的签到程序
2013/01/17 Python
PyCharm设置SSH远程调试的方法
2018/07/17 Python
Python3.6使用tesseract-ocr的正确方法
2018/10/17 Python
python pickle存储、读取大数据量列表、字典数据的方法
2019/07/07 Python
Python语言异常处理测试过程解析
2020/01/08 Python
Python递归实现打印多重列表代码
2020/02/27 Python
python实现对变位词的判断方法
2020/04/05 Python
Rockport乐步美国官网:风靡美国的白宫鞋
2016/11/24 全球购物
马来西亚最好的婴儿商店:Motherhood
2017/09/14 全球购物
澳大利亚鞋仓库:Shoe Warehouse
2019/07/25 全球购物
大学生应聘推荐信范文
2013/11/19 职场文书
乡镇办公室工作决心书
2014/03/11 职场文书
成龙霸王洗发水广告词
2014/03/14 职场文书
社区志愿者活动总结
2014/06/26 职场文书
个人授权委托书范文
2014/09/21 职场文书
办公用品质量保证书
2015/05/11 职场文书
2016年寒假见闻
2015/10/10 职场文书