1. 程式人生 > >用戶自定義異常

用戶自定義異常

erro traceback cep size lan self 2.0 red ret

命名(Python

)常應Exception :

>>> class MyError(Exception):

def __init__(self, value): self.value = value

...
...
...
...
...
>>> try:
... raise MyError(2*2)
... except MyError as e:
... print(’My exception occurred, value:’, e.value) ...

My exception occurred, value: 4

>>> raise MyError(’oops!’) Traceback (most recent call last):

  File "<stdin>", line 1, in ?
__main__.MyError: ’oops!’

def __str__(self):
return repr(self.value)

Exception __init__() value args

義任西為了入幾一個出幾一個義一個:

class Error(Exception):
"""Base class for exceptions in this module.""" pass

class InputError(Error):
"""Exception raised for errors in the input.

    Attributes:
        expression -- input expression in which the error occurred
        message -- explanation of the error

"""

def __init__(self, expression, message):

self.expression = expression self.message = message

用戶自定義異常