zoukankan      html  css  js  c++  java
  • 自定义异常

    #尽管内建异常类包括了大部分异常,而且可以满足很多要求,但有时还是要自己创建自己的异常类。比如要精确知道问题的根源,就需要使用自定义异常精确定位问题。可以通过创建一个新exception类拥有自己的异常。异常应该继承自Exception类,可以直接继承,也可以间接继承。
    #因为错误就是类,捕获一个错误就是捕获该类的一个实例,因此错误并不是凭空产生的,而是由一些不合理的部分导致的。Python的内建函数会抛出很多类型的错误,我们自己编写的函数也可以抛出错误,如果要抛出错误,那么可以根据需要定义一个错误的类,选择好继承关系,然后用raise语句抛出一个错误的实例。
    #例如:
     1 #!/usr/bin/python3
     2 #-*-coding:UTF-8-*-
     3 #异常9.9
     4 
     5 class MyError(Exception):
     6     def __init__(self):
     7         pass
     8 
     9     def __str__(self):
    10         return 'This is self define error'
    11 
    12 def my_error_test():
    13     try:
    14         raise MyError()
    15     except MyError as e:
    16         print('exception info:',e)
    17 
    18 my_error_test()
    #执行结果如下:
    1 D:Pythonworkspace>python 异常9.9.py
    2 exception info: This is self define error
    #由程序和执行结果看到,程序正确执行了自定义的异常,并且需要继承Exception类。
    #异常最好以Error结尾,一方面贴近标准异常,另一方面便于见名知意。
  • 相关阅读:
    java相关
    cmd批处理命令及powershell
    火狐浏览器调试模式
    windows 配置java环境变量
    Acwing-279-自然数拆分(背包)
    Acwing-278-数字组合(背包)
    Acwing-277-饼干(DP)
    Acwing-274-移动服务(DP)
    Acwing-275-传纸条(DP)
    Acwing-121-赶牛入圈(二分, 二维前缀和,离散化)
  • 原文地址:https://www.cnblogs.com/DLHe/p/8191160.html
Copyright © 2011-2022 走看看