例外処理
例外処理を学ぶと、プログラムの実行中にエラーが発生した場合でも、プログラムを停止せずに、安全にプログラムを終了させることができます。
サンプルコード
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)