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时区设置方法与pytz查询时区教程

时区的概念与转换 首先要知道时区之间的转换关系,其实这很简单:把当地时间减去当地时区,剩下的就是格林威治时间了。 例如北京时间的18:00就是18:00+08:00,相减以后就是10:0...

python email smtplib模块发送邮件代码实例

python email smtplib模块发送邮件代码实例

本例使用 QQ邮箱测试,需要打开 QQ邮箱的 smtp协议,获取授权码 代码内容如下: #!/usr/bin/env python # _*_ coding:utf-8 _*_ _...

python使用writerows写csv文件产生多余空行的处理方法

初次接触python,学艺不精,第一次实战写一个文本处理的小程序时便遇到了头疼的问题。 先看代码: 生成的.CSV文件每两行之间都会多出一行空格(如下图),具体原因可参看点击打开链接...

Python中splitlines()方法的使用简介

 splitlines()方法返回一个字符串的所有行,可选包括换行符列表(如果num提供,则为true) 语法 以下是splitlines()方法的语法: str.spli...

轻松掌握python设计模式之策略模式

轻松掌握python设计模式之策略模式

本文实例为大家分享了python策略模式代码,供大家参考,具体内容如下 """ 策略模式 """ import types class StrategyExample: def...