All the built-in exceptions are defined in terms of classes. To create a new exception, create a new class definition that inherits from exceptions.Exception, such as the following:
import exceptions # Exception class class NetworkError(exceptions.Exception): def __init__(self,args=None): self.args = args
The name args should be used as shown. This allows the value used in the raise statement to be properly printed in tracebacks and other diagnostics. In other words,
raise NetworkError, "Cannot find host."
creates an instance of NetworkError using the following call:
NetworkError("Cannot find host.")
The object that is created will print itself as “NetworkError: Cannot find host.” If you use a name other than the