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

作者:坏蛋是我 时间:2022-10-20 02:26:26 

本文实例讲述了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,list,堆栈,队列
0
投稿

猜你喜欢

  • Python基于百度AI实现抓取表情包

    2022-05-01 00:01:35
  • mysql 8.0.11安装配置方法图文教程

    2024-01-27 17:22:08
  • Javascript解决常见浏览器兼容问题的12种方法

    2024-04-10 10:47:43
  • pandas时间序列之如何将int转换成datetime格式

    2023-03-09 07:50:34
  • oracle命令行删除与创建用户的代码

    2009-03-02 10:54:00
  • Python实现拓扑算法的示例

    2023-12-09 15:06:29
  • Python实现的基数排序算法原理与用法实例分析

    2023-11-11 10:15:12
  • Python与人工神经网络:使用神经网络识别手写图像介绍

    2022-05-23 03:11:36
  • Vue.js绑定HTML class数组语法错误的原因分析

    2024-04-30 10:20:07
  • Oracle 存储过程总结(一、基本应用)

    2024-01-24 22:25:53
  • python文件选择对话框的操作方法

    2023-08-02 16:27:21
  • 详解使用webpack构建多页面应用

    2024-04-19 10:03:57
  • Python使用Pycrypto库进行RSA加密的方法详解

    2021-02-28 02:05:33
  • 中秋将至利用python画一些月饼从天而降不用买了

    2023-08-17 13:08:23
  • python输出小数精度控制的方法

    2021-07-18 16:35:26
  • MySQL数据库远程访问权限如何打开(两种方法)

    2024-01-26 12:58:48
  • 倾斜的鼠标翻转导航制作上的烦恼

    2007-06-20 16:39:00
  • js倒计时代码

    2008-05-07 13:41:00
  • javascript创建函数的20种方式汇总

    2024-02-26 21:25:06
  • Mysql免安装版设置密码教程详解

    2024-01-26 21:25:59
  • asp之家 网络编程 m.aspxhome.com