Python 例外処理の使い方・書き方(try except)

スポンサーリンク

Pythonで例外処理は「try ~ except」を使用します。

例外処理とはプログラムに異常が発生した場合、通常はプログラムが落ちてしまうところを、落ちないように対応することを例外処理といいます。

プログラムに異常が発生しそうなポイントをあらかじめ例外処理を行って、アラームメッセージなどで警告するとユーザビリティの高いアプリとなります。

今回は、Pythonで例外処理の使い方・書き方を解説します!

Python 例外処理の使い方(try except)

例外処理の定義

# Python例外処理
try:
    通常処理
except エラーオブジェクト:
    例外処理

Pythonの例外処理は「try:」の後に改行して処理を記述し、「except:」の後に改行して例外処理を記述します。

「try」「except」のあとには「:」を忘れずに記述してください。

エラーオブジェクト

Pythonのエラーオブジェクトはたくさんありますが、使用される頻度の高いものを紹介します。

  • Exception・・・最もよく使用される。ほとんどのエラーを補足する
  • ZeroDivisionError・・・0徐算エラー
  • FileNotFoundError・・・ファイルが見つからない

 

 

0徐算エラーの例外処理

# Python例外処理
def divi(iNum):
    try:
        return 100 / iNum
    except ZeroDivisionError:
        print('0除算エラー')

# 関数実行
divi(1)
#[結果] 100.0
divi(0)
#[結果] 0除算エラー

ここでは関数「devi」で例外処理を作成しました。単純な割り算でエラーが発生する場合、つまり0で割ってエラーが発生してしまう「0徐算エラー」を想定しています。0徐算エラーは「except ZeroDivisionError」とします。

関数実行でパラメータ「0」を指定すると0徐算となり、例外処理で補足されました。

この例外処理がないとこのプログラムは落ちてしまうので例外処理は必ず記述するよう注意してください。

 

0徐算エラーの例外処理(Exception使用)

# Python例外処理
def divi(iNum):
    try:
        return 100 / iNum
    except Exception:
        print('0除算エラー')

# 関数実行
divi(1)
#[結果] 100.0
divi(0)
#[結果] 0除算エラー

ここでは例外処理のエラーオブジェクトを「ZeroDivisionError」から「Exception」に変更しました。

変更しても結果はまったく同じです。「Exception」は幅広いエラーに対応しているため「ZeroDivisionError」も補足できます。

 

以上、Python 例外処理の使い方・書き方(try except)でした。

 

コメント