# 栈 先进后出 例如蒸笼,弹夹,饭菜等
class StackFullException(Exception):
"""自定义一个栈溢出异常"""
pass
class StackEmptyException(Exception):
"""自定义一个栈空出异常"""
pass class Stack:
"""
自定义一个栈
"""
def __init__(self, size):
self.size = size
self.lst = [] # 存放数据的列表
self.top = 0 # 栈顶指针 def push(self, el):
"""入栈"""
if self.top >= self.size:
raise StackFullException('Your stack is full!')
self.lst.insert(self.top, el) # 放入元素
self.top += 1 # 栈顶指针向上移动一下 def pop(self):
"""出栈"""
if self.top == 0:
raise StackEmptyException('Your stack is empty!')
self.top -= 1
el = self.lst[self.top]
return el s = Stack(4) # 传入栈的长度
# 往栈传入数据
s.push('林志玲')
s.push('朱茵')
s.push('金喜善')
s.push('张娜拉')

print(s.pop())
print(s.pop())
print(s.pop())
print(s.pop())

最新文章

  1. ExceptionLess异常日志收集框架-1
  2. 经典收藏 50个jQuery Mobile开发技巧集萃
  3. io资料
  4. css样式(二)(伪类 | 伪元素 | 导航 | 图像拼合 | 属性选择器 )
  5. 实战Django:官方实例Part2
  6. github and SourceTree初步使用
  7. 自定义checkbox样式
  8. 【线性代数】标准正交矩阵与Gram-Schmidt正交化
  9. 底部导航栏-----FragmentTabHost
  10. pycharm中Django的安装和简单使用
  11. OpenGL.Tutorial03_Matrices_测试
  12. MySql最土的语法解释使用一。
  13. 【IE11请求中止】 XMLHttpRequest: 网络错误 0x2ef3的意外出现
  14. [转] web前端js构造无法销毁的类UUID识别码,识别浏览器设备唯一性
  15. 【C#】C#操作Excel文件(转)
  16. 使用mysql乐观锁解决并发问题思路
  17. ArcGIS鼠标滚轮方向之ArcMap篇
  18. iOS 组件化方案
  19. guulp配置编译ES6
  20. Codeforces 834C - The Meaningless Game

热门文章

  1. dev控件 xtraTabbedMdiManager 如何将关闭子窗体改为收回主窗体内
  2. while循环与 for循环
  3. bit、byte、与字符
  4. java基础知识—运算符和基本选择结构
  5. swiper 父级元素display:none 之bug
  6. DeepCTR专题:Neural Factorization Machines 论文学习和实现及感悟
  7. native-echarts 图形组件
  8. Linux:Gentoo系统的安装笔记(二)
  9. 网易云课堂----java视频教程
  10. java.lang.ClassNotFoundException: org.apache.storm.topology.IRichSpout