《python核心编程第二版》练习题——实现堆栈操作(FILO)

#!/usr/bin/env python
stack = []

def pushit():
        stack.append(input('Enter new string:').strip())

def popit():
        if len(stack) == 0:
                print ('Cannot pop from an empty stack!')
        else:
                print('Removed ', stack.pop())

def viewstack():
        print(stack)

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

def showmenu():
    pr = '''
        p(U)sh
        p(O)p
        (V)iew
        (Q)uit

        Enter your choice:'''

    while True:
        while True:
            try:
                choice  = 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()

                                   
           
               

转载于:https://my.oschina.net/u/3803035/blog/1790072

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值