Python

Pythonで学ぶ例外処理 try

例外処理

例外処理を学ぶと、プログラムの実行中にエラーが発生した場合でも、プログラムを停止せずに、安全にプログラムを終了させることができます。

サンプルコード

a = "hello"
b = 42

try:
    a + b
except TypeError:
    print("TypeError!!") # TypeErrorの時に実行
except IOError:
    print("IOError!!") # IndexErrorの時に実行
except:
    print("except!!") # その他の例外の時に実行
else:
    print("else")  # 例外が発生しなかった時に実行
finally:
    print("finally") # 例外が発生してもしなくても実行

エラー(例外)を発生させる

try:
    raise ValueError("ValueError!!")
except ValueError as e:
    print(e)

エラー(例外)が発生した時に、スタックトレースを表示

import traceback
 
try:
    raise Exception
except:
    traceback.print_exc()

スタックトレースをログファイルへ保存

import traceback
 
try:
    raise Exception
except:
    with open("error.log", 'a') as f:
        traceback.print_exc(file=f)