python栈stack的基本格式是什么,进栈与出栈操作是怎样
Admin 2022-06-27 群英技术资讯 1076 次浏览
今天就跟大家聊聊有关“python栈stack的基本格式是什么,进栈与出栈操作是怎样”的内容,可能很多人都不太了解,为了让大家认识和更进一步的了解,小编给大家总结了以下内容,希望这篇“python栈stack的基本格式是什么,进栈与出栈操作是怎样”文章能对大家有帮助。按照先进后出(FILO,First In Last Out)的原则存储数据,先进入的数据被压入栈底,最后的数据在栈顶。栈只能在一端进行插入和删除操作。
文章内容包含:
(1)栈的基本格式
(2)压栈 push_stack
(3)出栈 pop_stack
(4)取栈顶 peek_stack
class Stack():
def __init__ (self,size):
self.size = size #栈空间大小
self.top = -1 #栈中进入一个数据 top 加 1
self.stack = []
def display_stack(self):#栈stack的打印
print(self.stack)
if __name__ == "__main__":
stack = Stack(5) #设定栈空间
stack.display_stack() #打印栈数据
class Stack():
def __init__ (self,size):
self.size = size
self.top = -1
self.stack = [] #进栈数据列表
def display_stack(self):
print(self.stack)
def push_stack(self,data):
if len(self.stack ) >= self.size: #当数据数量大于设置的空间,则栈溢出
print("stack over flow!")
return
self.stack.append(data) #没有栈溢出就将数据追加到列表中
self.top += 1 #栈中每增加一个数据就加 1
if __name__ == "__main__":
stack = Stack(5)
stack.push_stack(0)
stack.push_stack(1)
stack.push_stack(2)
stack.push_stack(3)
stack.push_stack(4)
stack.push_stack(5) #stack空间是 5,这里进栈数据时 6 个,即提示栈溢出stack over flow!
stack.display_stack()
执行结果:

class Stack():
def __init__ (self,size):
self.size = size
self.top = -1
self.stack = [] #进栈数据列表
def display_stack(self):
print(self.stack)
def push_stack(self,data):
if len(self.stack ) >= self.size:
print("stack over flow!")
return
self.stack.append(data)
self.top += 1
def pop_stack(self):
if self.top <= -1: #当top小于等于初始值 -1 时说明stack数据列表为空
print("stack is empty!")
return
ret = self.stack.pop() #stack数据列表不为空就取出最后进的值,列表数据数量就少一个
self.top -= 1
return ret
if __name__ == "__main__":
stack = Stack(5)
stack.push_stack(0)
stack.push_stack(1)
stack.push_stack(2)
stack.push_stack(3)
stack.push_stack(4)
stack.display_stack()
#进栈数据有 5 个,出栈函数调用了 6 次,就出现了提示stack is empty!
ret = stack.pop_stack()
print(ret)
stack.display_stack()
ret = stack.pop_stack()
print(ret)
stack.display_stack()
ret = stack.pop_stack()
print(ret)
stack.display_stack()
ret = stack.pop_stack()
print(ret)
stack.display_stack()
ret = stack.pop_stack()
print(ret)
stack.display_stack()
ret = stack.pop_stack()
print(ret)
stack.display_stack()
执行结果:

class Stack():
def __init__ (self,size):
self.size = size
self.top = -1
self.stack = []
def display_stack(self):
print(self.stack)
def push_stack(self,data):
if len(self.stack ) >= self.size:
print("stack over flow!")
return
self.stack.append(data)
self.top += 1
def peek_stack(self):
if self.top == -1: #当栈内没有数据时 提示 stack is empty!
print("stack is empty!")
return
peek = self.stack[self.top] #栈不为空时,将栈顶的数据提取出来
return peek
if __name__ == "__main__":
stack = Stack(5)
stack.push_stack(0)
stack.push_stack(1)
stack.push_stack(2)
stack.push_stack(3)
stack.push_stack(4)
stack.push_stack(5)
stack.display_stack()
peek = stack.peek_stack()
print(peek)
执行结果:

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要介绍了Python类和方法注释规范说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
独热编码即 One-Hot 编码,又称一位有效编码。其方法是使用 N位 状态寄存器来对 N个状态 进行编码,每个状态都有它独立的寄存器位,并且在任意时候,其中只有一位有效,这篇文章主要介绍了机器学习数据预处理之独热One-Hot编码及其代码详解,需要的朋友可以参考下
对List进行排序,Python提供了两个方法方法1 用List的内建函数list sort进行排序list sort(func=None, key=None, reverse=False)Python实
今天给大伙分享一下 Python 爬虫的教程,这次主要涉及到的是关于某 APP 的逆向分析并抓取数据,关于 APP 的反爬会麻烦一些,比如 Android 端的代码写完一般会进行打包并混淆加密加固,所以除了抓包之外,还需要对 APP 进行查壳脱壳反编译等操作。
定义匿名函数指一类无须定义标识符的函数或子程序。Python用lambda语法定义匿名函数,只需用表达式而无需申明。lambda语法的定义如下:lamb
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008