例外が起こったフレームの変数を得る

Python で例外が起こったスタックフレームからローカル変数を取得するメモ。

import inspect

frame = inspect.trace()[例外が起きた場所][0]
hoge = frame.f_locals['hoge']

例外の種類を特定し、変数を取り出して処理を続けるみたいなアホくさいことができます。