1. 新建一个异常捕获模块
MyErrorInfo.py
#!/usr/bin/env python3
class MyErrorInfo(Exception):
def __init__(self, code):
self.code = code
def __str__(self):
if self.code == 1:
print("Error code 1")
2. 新建一个业务代码
raise_test.py
#!/usr/bin/env python3
from MyErrorInfo import MyErrorInfo
def hello_error(code):
if code != 1:
print("no error")
else:
raise MyErrorInfo(code)
hello_error(0)
try:
hello_error(1)
except MyErrorInfo:
print("get error")
3. 执行raise_test.py
执行脚本
python3 raise_test.py
得到如下打印
root@wangsh:/home/wangsh/workspace/py_exercise# python3 raise_test.py
no error
get error
在这里可以看到,是可以正常抛出错误且被捕获,MyErrorInfo中也可做其他操作,自由扩展