如何从IPython提示符返回至ipdb调试提示符?
从IPython提示符返回ipdb的方法
你遇到的情况是进入了嵌入的IPython环境,直接退出会导致程序终止,以下是可行的解决办法:
方法1:用%debug切入ipdb
在IPython的In :提示符下输入%debug,这会直接启动ipdb调试器,让你回到ipdb >提示符。
方法2:先设断点再退出IPython
如果想在退出IPython后自动回到ipdb,可以先在IPython中手动设置断点:
import ipdb; ipdb.set_trace()
执行这条命令后,再输入exit()退出IPython,程序会立刻在你设置的断点处停住,自动进入ipdb。
方法3:避免意外进入IPython
你输入ipdb > c后进入IPython,大概率是代码里嵌入了IPython(比如from IPython import embed; embed()),或是ipdb配置自动启用了IPython交互。如果不想频繁触发这种情况:
- 移除代码中的
embed()调用; - 启动ipdb时添加
--no-ipython参数,禁用自动进入IPython的功能。
内容的提问来源于stack exchange,提问作者Alan Buxton
相关产品推荐
相关产品推荐

