Pythonで手動で例外を発生させる方法
Python
では、プログラムの特定の条件で手動で例外を発生させるためにraise
文を使います。raise
文に例外クラスとメッセージを渡すことで、任意のタイミングでエラーを発生させ、エラーハンドリングを行うことができます。
基本的な使い方
def divide(x, y):
if y == 0:
raise ValueError("0で割ることはできません")
return x / y
この例では、y
が0の場合にValueError
が発生します。
カスタム例外の作成
独自のカスタム例外クラスを作成することもできます。既存のException
クラスを継承して作成します。
class CustomError(Exception):
pass
raise CustomError("カスタムエラーが発生しました")
再度例外を発生させる
例外が発生した後にログを記録し、例外を再度発生させる場合は、raise
文を使ってトレースバックを保持しながら例外を再発します。
try:
1 / 0
except ZeroDivisionError as e:
print("エラー発生:", e)
raise
結論
raise
文を使えば、任意のタイミングで例外を発生させることができ、エラーハンドリングをより細かく制御できます。カスタム例外を定義することで、特定の状況に対応した例外処理が可能です。