pdbよりも強いIpyhoon.coreのdebuggerを使う方法です.
set_debugger.py
import sys
def set_debugger_org():
if not sys.excepthook == sys.__excepthook__:
from IPython.core import ultratb
sys.excepthook = ultratb.FormattedTB(call_pdb=True)
def set_debugger_org_frc():
from IPython.core import ultratb
sys.excepthook = ultratb.FormattedTB(call_pdb=True)
def set_trace():
from IPython.core.debugger import Pdb
Pdb(color_scheme='Linux').set_trace(sys._getframe().f_back)
としてset_debugger_org_frc()
などをmain関数内で呼んであげれば良い.
うまくデバッガに入ってくれないときも残念ながらあります.
こちら先輩に教わりました.ありがとうございます.