Pythonのプログラムでエラー通知をどのように実装するかについて、以下に詳しく説明します。
戻り値による通知
一つ目の方法は、戻り値による通知です。この方法では、関数が特定の戻り値を返すことでエラーを通知します。以下に例を示します。
def sample_1(a, b):
if a > b:
return -1
上記の例では、a
がb
より大きい場合に-1
を返すことでエラーを通知しています。
また、エラー有無と処理結果をタプルで返す方法もあります。
def sample_2(a, b):
if a > b:
return False, None
この例では、a
がb
より大きい場合に(False, None)
を返すことでエラーを通知しています。
例外による通知
二つ目の方法は、例外による通知です。この方法では、エラーが発生した場合に例外を送出します。以下に例を示します。
def sample_4():
if a > b:
raise Exception('Error!')
上記の例では、a
がb
より大きい場合にException
を送出することでエラーを通知しています。
まとめ
Pythonにおいては基本的に例外を使うのがよいとされています。理由は、例外による通知は暗黙的にエラーが無視されることがないためです。エラーが発生すると通常プログラムはその時点で停止します。そのため、異常状態になったプログラムは一刻も早く停止させるべきであり、それを考慮するとエラーが発生した時点で停止するプログラムはエラーによる二次障害のリスクを抑えた設計であるといえます。