独自の例外クラスを作成することで、特定のエラー条件に対してカスタマイズされた処理を行うことができます。独自の例外クラスは、標準の Exception クラスを継承して作成します。これにより、特定の状況に応じた例外を発生させることができ、エラーハンドリングがより柔軟になります。
独自の例外クラスを作成するには、Exception クラスを継承し、新しいクラスを定義します。必要に応じて、エラーメッセージを受け取るコンストラクタを追加できます。
"""独自の例外クラス"""
=
この例では、CustomError クラスを定義し、その例外を発生させた後、キャッチしてエラーメッセージを表示しています。
複数の独自例外クラスを作成することで、エラーの種類ごとに異なる処理を行うことができます。これにより、特定のエラー条件に対してより細かい制御が可能になります。
"""入力の検証エラーを表す例外クラス"""
pass
"""データベース関連のエラーを表す例外クラス"""
pass
この例では、ValidationError と DatabaseError の2つの独自例外クラスを定義し、それぞれのエラーを発生させて適切に処理しています。
独自例外クラスにカスタム属性を追加することで、例外に関する追加情報を提供することができます。例えば、エラーコードや詳細なエラーメッセージを含めることができます。
"""カスタムエラークラス"""
=
=
この例では、CustomError クラスに message と code のカスタム属性を追加しています。例外が発生した場合、それらの属性を使って詳細なエラーメッセージを表示します。
独自例外クラスを使う際、例外を再発生(再スロー)させて外部で処理させることもできます。これにより、例外が発生した場所と、それが処理された場所の両方で情報を提供できます。
"""独自の例外クラス"""
pass
# 例外を再発生させる
この例では、process_data 関数内で発生した CustomError を再発生させ、外部の try ブロックでキャッチして処理しています。
この章では、独自例外の作成方法について学びました。独自の例外クラスを作成することで、特定のエラー条件に対してカスタマイズされた処理を行うことができ、エラーハンドリングがより柔軟になります。次の章では、オブジェクト指向プログラミング(OOP)について学びます。クラスとオブジェクトを使って、より複雑なデータ構造とロジックを効果的に管理する方法を理解しましょう。