这个stack的例子可以学到不少东西:
- string的内建函数 strip
- print语法
- 函数定义
- 模块__main__的使用
- while,break
- 字典{}的用法,可以放置任何对象
- ”’的用法,三引号
- 当然就是list.append, pop的用法
#!/usr/bin/env python
stack = []
def pushit():
stack.append(raw_input('Enter new string:'.strip()))
def popit():
if len(stack) == 0:
print 'Empty'
else:
print 'Removed [', stack.pop(), ']'
def viewstack():
print stack
CMDs = {'u': pushit, 'o': popit, 'v': viewstack, 'q': exit}
def showmenu():
pr = '''
p(U)sh
p(0)p
(V)iew
(Q)uit
Enter choice: '''
while True:
while True:
try:
choice = raw_input(pr).strip()[0].lower()
except (EOFError, KeyboardInterrupt, IndexError):
choice = 'q'
print '\nYou picked: [%s]' % choice
if choice not in 'uovq':
print 'Invalid option, try again'
else:
break
CMDs[choice]()
if __name__ == '__main__':
showmenu()
测试数据: Continue reading »
本文通过一个简单的Python程序展示了如何实现基本的栈操作,包括压栈、弹栈和查看栈内容等功能。用户可以通过交互式菜单选择不同的操作,从而更好地理解Python中栈的工作原理。
719

被折叠的 条评论
为什么被折叠?



