Python之列表实现栈的工作功能

yipeiwu_com6年前Python基础

问题:

python中使用列表实现栈的功能

"""
栈的工作原理
  入栈
  出栈
  查看栈顶元素
  栈的长度
  栈是否为空
"""
stack = []
info = """
    栈操作
  1.入栈
  2.出栈
  3.栈顶元素
  4.栈的长度
  5.栈是否为空
  q.退出
"""
while True:
  print(info)
  choice = input('请输入选择:')
  if choice == '1':
    item = input('入栈元素:')
    stack.append(item)
    print('元素%s入栈成功' %item)
  elif choice == '2':
    #先判断栈是否为空
    if not stack:
      print('栈为空,不能出栈')
    else:
      item = stack.pop()
      print('%s元素出栈成功' %item)
  elif choice == '3':
    if len(stack) == 0:
      print('栈为空')
    else:
      print('栈顶元素为%s' %(stack[-1]))
  elif choice == '4':
    print('栈的长度为%s' %(len(stack)))
  elif choice == '5':
    if len(stack) == 0:
      print('栈为空')
    else:
      print('栈不为空')
  elif choice == 'q':
    print('退出')
    break
  else:
    print('请输入正确的选择')

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对【听图阁-专注于Python设计】的支持。如果你想了解更多相关内容请查看下面相关链接

相关文章

flask框架jinja2模板与模板继承实例分析

本文实例讲述了flask框架jinja2模板与模板继承。分享给大家供大家参考,具体如下: jinja2模板 from werkzeug.contrib.cache import Si...

python3+PyQt5实现支持多线程的页面索引器应用程序

python3+PyQt5实现支持多线程的页面索引器应用程序

本文通过Python3+pyqt5实现了python Qt GUI 快速编程的19章的页面索引器应用程序例子。 /home/yrd/eric_workspace/chap19/walke...

Python 的 Socket 编程

Socket是网络应用的基础。而Python使得网络socket编程入门变得超级简单。在这篇简介里面我们将创建一个简单服务器,用于接受和相应客户端程序的请求。 由于本人最近对 Linux...

Python使用指定端口进行http请求的例子

使用requests库 class SourcePortAdapter(HTTPAdapter): """"Transport adapter" that allows us to...

Python使用装饰器进行django开发实例代码

本文研究的主要是Python使用装饰器进行django开发的相关内容,具体如下。 装饰器可以给一个函数,方法或类进行加工,添加额外的功能。 在这篇中使用装饰器给页面添加session而不...