Pythonでは、プログラムを任意の箇所で終了させるための「exit関数」といえるものが3種類あります。
exit関数
:Pythonの対話シェルで使用可能sys.exit関数
:SystemExit例外を発生させ、Python処理系にプログラムを終了することを伝える。何らかのクリーンアップ処理が可能os._exit関数
:即時にプログラムを終了させる。クリーンアップ処理は行われない
一方、Pythonにおける「raise」は、自分で例外を発生させるためのキーワードです。基本的な使い方は、「raise Exception」のように、Exceptionの後に任意のエラーメッセージを記述する形式となります。
以下に、それぞれの使用例を示します。
# sys.exit関数の使用例
import sys
def func():
print('Start')
sys.exit()
print('End') # この行は実行されません
func()
# raiseの使用例
def validate_age(age):
if age < 0:
raise ValueError("Age can't be negative")
validate_age(-1) # ValueError: Age can't be negative
これらの違いを理解することで、エラーハンドリングやプログラムの終了処理を適切に行うことができます。