Python核心编程:用列表模拟堆栈

来源:互联网 发布:优酷mac下的视频在哪里 编辑:程序博客网 时间:2024/06/05 09:46
#!/usr/bin/env python


stack = []


def pushit():
stack.append(raw_input('Enter New string: ').strip())


def popit():
if len(stack)==0:
print 'cannot pop from an empty stack!'
else:
print 'remove[','stack.pop',']'


def viewstack():
print stack     #calls str() internally


CMDs = {'u': pushit,'o': popit,'v': viewstack}


def showmenu():
pr="""
p(U)sh
p(O)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


    if choice == 'q':
     break
    CMDs[choice]()


if __name__ == '__main__':
showmenu()
1 0
原创粉丝点击