Python中用户定义的异常

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