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常用模块之requests模块用法分析

    2023-12-30 15:11:49
  • 基于go微服务效率工具goctl深度解析

    2023-07-12 03:57:13
  • Python详解复杂CSV文件处理方法

    2021-04-05 11:12:02
  • 如何在ACCESS中插入超级链接?

    2007-10-22 12:13:00
  • 使用Nginx+uWsgi实现Python的Django框架站点动静分离

    2023-11-13 11:30:37
  • Python入门_学会创建并调用函数的方法

    2023-10-14 17:12:22
  • python+os根据文件名自动生成文本

    2022-06-12 00:50:48
  • 在ASP应用程序中加入智能搜索

    2007-09-18 13:15:00
  • Python安装及Pycharm安装使用教程图解

    2023-08-01 05:38:06
  • 微信小程序搭建及解决登录失败问题

    2023-06-28 09:51:49
  • php控制文件下载速度的方法

    2023-07-19 00:21:30
  • 奇淫技巧和西天取经

    2009-08-24 12:34:00
  • 使用css给图片添加阴影入门篇

    2009-07-06 14:38:00
  • Python爬虫爬取百度搜索内容代码实例

    2022-06-23 02:21:11
  • asp如何用JMail POP3接收电子邮件?

    2010-06-13 13:09:00
  • PHP JSAPI调支付API实现微信支付功能详解

    2023-05-29 05:09:13
  • 浅谈tensorflow 中tf.concat()的使用

    2023-07-21 20:24:08
  • 简单实例解释Oracle分页查询

    2023-07-16 00:54:03
  • python连接PostgreSQL数据库的过程详解

    2023-08-24 03:42:31
  • php数组函数序列之array_unique() - 去除数组中重复的元素值

    2023-11-18 11:14:06
  • asp之家 网络编程 m.aspxhome.com