\

Pythonで自作のエラー処理を実装する場合、新たなクラスとして定義します。Pythonのエラーは、構文エラーと例外に分けられます。この記事では後者を扱います。

例外の定義

自作の例外は以下のように定義します。

class MyError(Exception): pass

ここでは、Pythonに標準で組み込まれている Exception(例外)クラスを継承して、MyErrorという名前のクラスを定義しています。MyErrorクラスの中身は必要ありません。

例外の呼び出し

定義した例外を呼び出すには、raise文を使用します。

raise MyError('ここにエラーの内容を書きます。')

例外の処理

例外が発生してもプログラムの処理を続行したい場合、try, except文を使用します。

try:
    raise MyError("例外メッセージ")
except MyError as e:
    print(e)

補足

小規模なプログラムなどであえて例外クラスを定義したくない場合、Exceptionクラスを使って例外を発生させることも可能です。

raise Exception("例外の基底クラス")

ただし、Exceptionクラスをそのまま使う場合、例外の処理に注意が必要です。try, except文でExceptionクラスを処理するとき、Exceptionクラスを継承しているクラスも処理されてしまいます。Pythonの多くの例外はExceptionクラスを継承しているため、予期しない挙動が生じやすくなります。

以上がPythonで自作のエラー処理を実装する方法についての基本的な説明です。この情報が役立つことを願っています。

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です