我希望以交互方式调试深深隐藏在某个类中的代码。
我知道可以使用
打开ipdbfrom IPython.core.debugger import Pdb
Pdb().set_trace()
这项工作也在ipython(jupyter)笔记本中。
我在终端工作时发现非常方便的另一种可能性是使用
在特定点打开shellfrom IPython import embed
embed()
然后直接使用ipython与变量等进行交互
但是,如果我在笔记本中使用它,我会在笔记本中嵌入一个ipython shell,这个shell甚至不能很好地工作(例如,如果我使用print
,内核块)。
我觉得最方便的是在代码中的某个预定义点中断内核执行并保留所有当前变量,以便我可以使用另一个单元进行调试,以及开发和测试新代码的可能性。当前的变量。 有没有办法实现这个目标?