Python还允许您通过从标准内置异常派生类来创建自己的异常。
这是与RuntimeError相关的示例。在这里,将创建一个类,该类是RuntimeError的子类。当您在捕获异常时需要显示更多特定信息时,此功能很有用。
在try块中,引发用户定义的异常并捕获到except块中。变量e用于创建类Networkerror的实例。
class Networkerror(RuntimeError): def __init__(self, arg): self.args = arg
因此,一旦您定义了上述类,就可以引发异常,如下所示:
try: raise Networkerror("Bad hostname") except Networkerror,e: print e.args