ユーザ定義例外
ビルトイン例外のほかにユーザが定義した例外を発生させることもできます。その場合は、raise文を使って例外を起こします。例外はオブジェクトなのでベースクラスExceptionから派生させたクラスを定義します。
次の例は、最も単純なもので例外クラスは結果的にExceptionと同じです。必要ならこのクラスに特別な処理をさせることもできます。
class MyException(Exception) : def __init__(self, e) : Exception.__init__(self, e) try : raise MyException, "my exception" except MyException, e : print e |
次のように、ビルトインクラスを利用して例外を発生させることもできます。
# User exception try : raise RuntimeError, "user exception occured." except RuntimeError, e: print e |