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设计】的支持。如果你想了解更多相关内容请查看下面相关链接

相关文章

python matplotlib库绘制条形图练习题

python matplotlib库绘制条形图练习题

练习一:假设你获取到了2017年内地电影票房前20的电影(列表a)和电影票房数据(列表b),那么如何更加直观的展示该数据? a = ["战狼2","速度与激情8","功夫瑜伽","西游...

Python模拟登录之滑块验证码的破解(实例代码)

模拟登录之滑块验证码的破解,具体代码如下所示: # 图像处理标准库 from PIL import Image # web测试 from selenium import webdri...

使用rpclib进行Python网络编程时的注释问题

rpclib 是一个非常好用的 python webservice 库,可以动态的生成 wsdl, 不过这个项目已经基本停止,并被一个新的项目取代 spyne,由于旧的项目 工作已经比较...

在漏洞利用Python代码真的很爽

不知道怎么忽然想看这个,呵呵 小我的python的反shell的代码 #!/usr/bin/python # Python Connect-back Bac...

浅谈numpy数组中冒号和负号的含义

在实际使用numpy时,我们常常会使用numpy数组的-1维度和”:”用以调用numpy数组中的元素。也经常因为数组的维度而感到困惑。 总体来说,”:”用以表示当前维度的所有子模块 “-...