【Python】例外処理の使い方ポイント(try文)

Pythonの例外処理「try文」の使い方について。

この記事の内容はコチラです

  • Pythonで例外処理(エラー処理)の使い方
  • エラーハンドリングの仕方
  • try文(try except)の使い方

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

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

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

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

例外処理の定義

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

Pythonの例外処理はtry文を使います。「try:」の後に改行して処理を記述します。この「try:」の中にある処理でエラーが起きたら「except:」に飛びます。エラーハンドリングは「except:」以降に記述します。

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

エラーオブジェクト

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

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

特に指定するものがなければ「Exception」がよく使われます。

0徐算エラーの例外処理

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

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

ここでは関数「divi」で例外処理を作成しました。単純な割り算でエラーが発生する場合、つまり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除算エラー

1つ前と全く同じコードで、ここでは例外処理のエラーオブジェクトを「ZeroDivisionError」から「Exception」に変更しました。

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

以上、Python 例外処理「try文」の書き方のポイントでした。

コメント