python 异常处理之自定义一个自己的异常

**python 异常处理之自定义一个自己的异常**
# -*- coding:utf-8 -*-
#异常处理:必须要有try和一个except(可以有多个)
#		else(如果except语句都没有执行,才会执行) 可选**
#		finally(不管结果怎么样最后都会执行) 可选
# 	结构:
try:
  	 number = int(input('请输入数字:'))
except ValueError as er:
    print('输入值异常',er)
except NameError as er:
    print('输入异常',er)
except:
    print('未知错误')
else:
    print('没有错误!')
finally:
    print('end')

#----------^-^我是分割线^-^----------------
 class MyExcept1(Exception):   ##自定义一个异常,继承了Exception

    def __init__(self,value):
        self.value = value
        
    def __str__(self):     ##返回打印信息
        return self.value

class MyExcept2(Exception):   ##自定义一个异常,继承了Exception

    def __init__(self,value):
        self.value = value
        
    def __str__(self):
        return self.value


#创建一个Bank类
class Bank(object):

    def __init__(self):
        self.blance = 500     ##金额大小
        
    def withDrawal(self,number):  		 ##定义判断方法
        if self.blance < number:         ##如果要取的钱大于你的金额
            raise MyExcept1('你没那么多钱!!')      ###抛出异常,并给出提示信息
        elif number < 0:                 ##如果要取的钱为负数
            raise MyExcept2('取款不能为负数  !  !')       ###抛出异常,并给出提示信息
        self.blance -= number            ###正常取钱的情况
        return self.blance                   ###返回剩下的金额

# eg:取钱实例
my = Bank() 
num = int(input('请输入取款金额:'))
try:
    money=my.withDrawal(num)
    print('你还剩余:',money)
except MyExcept1 as i:
    print(i)
except MyExcept2 as u:
    print(u)

————————————————
版权声明:本文为CSDN博主「々多崎作」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_43477651/article/details/90636600
发布了17 篇原创文章 · 获赞 1 · 访问量 819

猜你喜欢

转载自blog.csdn.net/weixin_45433031/article/details/104956332