Pythonでは、例外が発生したときにプログラムを終了する方法がいくつかあります。
sys.exit()
を使用する:sys.exit()
はSystemExit
例外を発生させ、これがトップレベルのインタプリタに捕捉されると、その終了ルーチンがトリガーされます。これには、すべてのatexit
関数の実行、すべてのオブジェクトの削除、最終的にOSのexit関数の呼び出しなどが含まれます。sys.exit()
は引数として終了コードを取ることができ、この終了コードはプログラムの終了コードとなります。
import sys
try:
# 何かをする
except Exception as e:
print(f"例外が発生しました: {e}", file=sys.stderr)
sys.exit(1)
- 例外を再度発生させる: 例外をキャッチして何らかのカスタム処理を行った後、再度その例外を発生させることもできます。これにより、元のトレースバックが保持されます。
try:
# 何か悪いことをする
except Exception as e:
# 例外を処理する
raise
これらの方法を適切に使用することで、Pythonプログラムは例外が発生したときに適切に終了することができます。