Python模拟入栈出栈操作

Posted

tags:

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

目标:

  1.编写菜单,提示用户操作选项(push,pop,view,quit)

  2.规则:定义列表,先入栈,后出栈,后入栈,先出栈

1.模拟入栈、出栈操作

>>> list1 = []
>>> list1.append(a)
>>> list1
[a]
>>> list1.append(b)
>>> list1
[a, b]
>>> list1.pop()
b
>>> list1
[a]
>>> list1.pop()
a
>>> list1
[]
>>>

 

2.编写实现模拟入栈、出栈以及查询等功能

[[email protected] python]# cat in_stack_out.py
#!/usr/bin/env python
#coding:utf8

db = []

#定义入栈函数
def push_it(): item = raw_input("item: ") db.append(item)
#定义出栈函数
def pop_it(): if db: print "Poped item is:", db.pop() else: print "\\033[31;1m%s\\033[0m" % (列表为空,请选择其他选项) #定义查询函数 def view_it(): print "\\033[32;1m%s\\033[0m" % db
#定义函数功能的提示菜单
def show_menu(): cmds = { "0": push_it, "1": pop_it, "2": view_it } prompt = ‘‘‘(0) push (1) pop (2) view (3) quit Please input your choice(0/1/2/3): ‘‘‘ while True: choice = raw_input(prompt).strip()[0] if choice not in 0123: print "Invalid choice, Try Again!" continue if choice == 3: break cmds[choice]() if __name__ == "__main__": show_menu()

 

3.运行代码,测试效果

技术分享




以上是关于Python模拟入栈出栈操作的主要内容,如果未能解决你的问题,请参考以下文章

JAVA 方法的入栈出栈问题

一般程序的执行上下文栈之入栈出栈

链栈算法

华为OD机试独家提供C语言题解 - 入栈出栈

关于汇编语言问题,入栈出栈啥用

如何理解“入栈、读栈、出栈”