栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python中的异常处理习题

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python中的异常处理习题

异常处理

定义了一个CandleShop类:
1)自定义一个异常类OutOfStack
2)请修改实例buy当购买蜡烛的量超出库存时会抛出OutOfStack异常
3)想办法在主程序中加一个代码会引起程序抛出OutOfStack
4)捕获该异常,并输出异常的具体信息

class CandleShop:
    name = "Here's a Hot Tip: Buy Drip Candles"
    def __init__(self, stock):
        self.stock = stock
    def buy(self, color):
        self.stock[color] = self.stock[color] - 1
candle_shop = CandleShop({'blue': 6, 'red': 2, 'green': 0})
candle_shop.buy('blue')

class OutOfStackError(Exception):
    def __init__(self,msg):
        self.msg=msg
    def __str__(self):
        return self.msg
for i in range(3):
    try:
        color=input('请输入你想要的颜色的蜡烛:')
        if color in candle_shop.stock.keys():
            if candle_shop.stock[color] <= 0:
                raise OutOfStackError('%s的蜡烛已经卖完了,如果需要请买其他颜色的!' % color)
            else:
                candle_shop.stock[color] = candle_shop.stock[color] - 1
                print('购买成功!')
                # print(candle_shop.stock)
        else:
            print('很抱歉你需要的蜡烛颜色我们不售卖!')
    except OutOfStackError as e:
        print('OutOfStackError',e)

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/580730.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号