首页 > 其他 > 详细

自定义异常

时间:2018-01-04 10:36:13      阅读:214      评论:0      收藏:0      [点我收藏+]
#尽管内建异常类包括了大部分异常,而且可以满足很多要求,但有时还是要自己创建自己的异常类。比如要精确知道问题的根源,就需要使用自定义异常精确定位问题。可以通过创建一个新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结尾,一方面贴近标准异常,另一方面便于见名知意。

自定义异常

原文:https://www.cnblogs.com/DLHe/p/8191160.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!