python spyder - 仅调试当前单元格或选择?

Her*_*rik 6 python debugging spyder

类似于这些(非常有用!)两个函数:

“运行当前单元格”“运行选择或当前行”

是否可以通过调试来做到这一点?我不想每次调试时都从我的大脚本文件的顶部开始。

我正在使用 Spyder 3.2.4 版

KPL*_*zen 3

如果您使用 IPython 作为解释器,则可以使用 IPython 中的魔法在遇到错误时%pdb自动启动。pdb

然后,您可以“运行当前单元格”并在需要时进入调试器。

例如我有一个简单的脚本:

my_var = 4
raise ValueError
Run Code Online (Sandbox Code Playgroud)

现在,在 IPython 终端中,我首先运行%pdb,然后运行我的脚本。

In [4]: my_var = 4
   ...: raise ValueError
Traceback (most recent call last):

  File "<ipython-input-4-31dc119cb1f3>", line 2, in <module>
    raise ValueError

ValueError

> <ipython-input-4-31dc119cb1f3>(2)<module>()
      1 my_var = 4
----> 2 raise ValueError


ipdb> 
Run Code Online (Sandbox Code Playgroud)

我有可用的调试器。

  • @KPLauritzen,我认为正确的魔法是“%debug”,而不是“%pdb”。调用“pdb.set_trace()”也可以完成这项工作。 (3认同)