• python中自定义的栈


    # 栈 先进后出 例如蒸笼,弹夹,饭菜等
    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('张娜拉')
    

    image.png

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

    image.png

  • 相关阅读:
    东坡诗词(选)
    网络编程_网络基础
    命名空间
    python常见报错类型和异常处理
    关于文件操作
    python支持的基本数据类型及其简单操作
    运算符
    python简介
    python实现简单四则运算计算器
    Memory barrier
  • 原文地址:https://www.cnblogs.com/lcfzh/p/10216827.html
Copyright © 2020-2023  润新知