python列表模拟栈

Posted niucunguo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python列表模拟栈相关的知识,希望对你有一定的参考价值。

class Stack():
def __init__(self,len):
self.stack =[]
self.len = len
def __repr__(self):#方便查看对象属性
return str(self.stack)# 需要返回字符串
def push(self,element):#压栈
self.stack.append(element)
def pop(self):#出栈
if self.stack:
self.stack.pop()
else:
return LookupError("栈已经空了")
def is_empty(self):#判断是否为空
return bool(self.stack)
def full(self):# 判断栈是否满了
if len(self.stack) == self.len :
print("栈满了")
else:
print("栈没满")
def find(self,element): #查找元素位置
return self.stack.index(element)
def peek(self):#返回栈顶元素
if self.is_empty():
return self.stack[-1]
else:
print("栈是空的")

s = Stack(4)
print(s.is_empty())
s.push(4)
s.push(6)
s.push(‘a‘)
s.full()
print(s.peek())
print(s.find(‘a‘))
# s.pop()
print(s)

以上是关于python列表模拟栈的主要内容,如果未能解决你的问题,请参考以下文章

Python模拟入栈出栈操作

Python 全栈开发:python列表List

Python 如何用列表实现栈和队列?

Python全栈之路----数据结构—列表

Python 根据入栈顺利判定出栈顺序

Python全栈自动化系列之Python编程基础(列表元组字典)