触発されて、例外の再送出について調べてみました。 Pythonでcatchした例外を無加工でもう一度投げなおしたい場合 - 西尾泰和のはてなダイアリー tracebackをログに残す場合のお約束コード - methaneのブログ 例外を捕らえたものの処理しきらないで再送出する場合、 methane さんの指摘の通り、情報量の少ない自作例外にしてしまうのは最悪です。しかし、 raise e としても traceback 情報がなくなってしまうため、これでもダメです。こういうときにはただ raise と書きます。 しかし、 Language Reference によると自作例外など別の型の例外を送出しつつ、 traceback の情報を残すことも可能ということがわかりました。 Python 2 系では raise 文の 3 つめの値に traceback オブジェクトを渡します。 Python