首页 Python基础入门视频教程 异常处理-自定义异常和主动抛出异常
pay pay

异常处理-自定义异常和主动抛出异常

日期: 2021年11月21日 01:11
阅读: 118
作者: Python自学网

摘要: 异常处理-自定义异常和主动抛出异常:团队合作中一些简单明快开发的时候需要给使用明快的开发人员以错误或警告提示

异常处理-自定义异常和主动抛出异常:团队合作中一些简单明快开发的时候需要给使用明快的开发人员以错误或警告提示。

一、主动抛出异常

def test(m, n):
    if n == 0:
        # print('除数不能为零!')
        raise ZeroDivisionError('除数不能为零!')
    else:
        print(m/n)

print('你走到这里了')
# 开发人员一般会使用这样的代码,好处在于抛出异常后,下面的代码不会被执行,如果使用print()后面代码依然执行
# test(10, 0)  # ZeroDivisionError: 除数不能为零!
# 如果开发人员想容错处理也可以使用下面的代码,一举两得
try:
    test(10, 0)
except ZeroDivisionError as err:
    print('wwwww', err)

二、自定义异常类

class ZeroErr(Exception):  # 异常都要直接或间接是继承自BaseException,这里通过Exception间接继承
    def __init__(self, msg):
        self.msg = msg
    pass


def test(m, n):
    if n == 0:
        # print('除数不能为零!')
        raise ZeroErr('除数不能为零!')
    else:
        print(m/n)

try:
    test(10, 0)
except ZeroErr as err:
    print('wwwww', err)

 

部分文字内容为Python自学网原创作品,转载请注明出处!视频内容已申请版权,切勿转载!
回顶部