指点成金-最美分享吧

登录

Python语法篇:自定义异常exception

佚名 举报

篇首语:本文由小编为大家整理,主要介绍了Python语法篇:自定义异常exception相关的知识,希望对你有一定的参考价值。

一:常见的内置异常

  • BaseException: 所有异常的基类
  • Exception:几乎所有的异常类都是从它派生而来的。
  • AttributeError:引用属性或给它赋值失败时引发。
  • OSError 操作系统不能执行指定的任务(如打开文件)时引发,有多个子类。
  • IndexError:使用序列中不存在的索引时引发,为LookupError的子类。
  • KeyError:使用映射中不存在的键触发,为LookupError的子类。
  • NameError:找不到名称(变量)时引发。
  • SyntaxError:代码不正确时引发。
  • TypeError:将内置操作或函数用于类型不正确的对象时引发的。
  • ValueError:将内置操作或函数用于这样的对象时引发:其类型正确但包含的值不合适。
  • ZeroDivisionError:在除法或求模运算的第二个参数为零时引发。
  • AssertionError:断言语句失败
  • RuntimeError:一般的运行时错误

二:自定义异常

class BusinessError(Exception):    def __init__(self, code, value):        self.code = code        self.value = value    def __str__(self):        return repr(self.code + " " + self.value)

三:基础使用

try:    raise BusinessError("500", "抛出一个自定义异常")except BusinessError as err:    print("BussinessError: 0".format(err))except ValueError:    print("ValueError")except:    print("unexcepted error")    # 不处理异常,再次抛出去    raiseelse:    # else中的代码发生异常不会执行except代码块    print("else")finally:    print("finally")

以上是关于Python语法篇:自定义异常exception的主要内容,如果未能解决你的问题,请参考以下文章