当前位置: 首页 > 后端技术 > Python

翻译:《实用的Python编程》04_04_Defining_exceptions

时间:2023-03-25 23:17:54 Python

类别|上一节(4.3特殊方法)|下一节(5对象模型)4.4定义异常用户可以通过类实现自定义异常:classNetworkError(Exception):传递异常类always继承自Exception它们通常是空类。空类在内部由pass表示。您还可以对异常进行分层:classAuthenticationError(NetworkError):passclassProtocolError(NetworkError):pass练习练习4.11:自定义异常为库定义自己的异常通常是一种很好的做法。这使得更容易区分异常是由常见的编程错误触发,还是由库有意触发以发出特定问题信号。请修改上一个练习中的create_formatter()函数,以在用户提供不正确的格式名称时触发自定义FormatError异常。示例:>>>fromtableformatimportcreate_formatter>>>formatter=create_formatter('xls')Traceback(最近调用最后):文件“”,第1行,在文件“tableformat.py”,行71、在create_formatter中raiseFormatError('Unknowntableformat%s'%name)FormatError:Unknowntableformatxls>>>Contents|上一节(4.3特殊方法)|下一节(5对象模型)注:完整翻译见https://github.com/codists/practical-python-zh

猜你喜欢