• 技术文章 >后端开发 >Python教程

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

    黄舟黄舟2017-07-24 15:22:18原创1775

    这篇文章主要介绍了Python基于list的append和pop方法实现堆栈与队列功能,结合实例形式分析了Python使用list定义及使用队列的相关操作技巧,需要的朋友可以参考下

    本文实例讲述了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方法)的示例的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:Python 功能 队列
    上一篇:关于Python3.X线程中信号量的使用详解 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • 一秒完成Python3与Python2脚本相互转化的实战方法,您造吗?• 一种编译器视角下的Python性能优化• 三个节省时间的 Python 技巧!• 值得收藏的30道Python练手题(附详解)• Python 处理 PDF:PyMuPDF 的安装与使用!
    1/1

    PHP中文网