ipython ipdb, when invoked via ipdb.set_trace(), d

2019-04-04 04:11发布

iPython does remember the command history if I run ipython normally, e.g. to mess around testing basic things in the repl, but I would like to be able to pull up the debugging commands from the previous debug session, and I am doing my debugging by simply running my program as normal, where the program contains

import ipdb
def info(type, value, info):
    import traceback
    traceback.print_exception(type, value, info)
    ipdb.pm()

import sys
sys.excepthook = info
trace = ipdb.set_trace

Which is to set it up so I can write trace() anywhere in my program to start debugging there when I run the program, or for it to automatically start postmortem debugging when it dies on its own.

Python with iPython has been leaps and bounds beyond other languages when it comes to quick code/test iterations and I'm just so close to nirvana at this point...

1条回答
迷人小祖宗
2楼-- · 2019-04-04 04:40

I use pudb instead. It enables getting to a real ipython shell from the debugger and all the commands there are saved

查看更多
登录 后发表回答