类似于这些(非常有用!)两个功能:
“运行当前单元格” “运行选择或当前行”
是否可以通过调试来做到这一点?我不想每次调试时都从大型脚本文件的顶部开始。
我使用的是 Spyder 版本 3.2.4
如果您使用 IPython 作为解释器,则可以使用 IPython 中的魔法
%pdb
在遇到错误时自动启动 pdb
。
然后您可以“运行当前单元”并在需要时进入调试器。
例如我有一个简单的脚本:
my_var = 4
raise ValueError
现在,在 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>
我有可用的调试器。
现在您有“调试”->“调试单元”选项。或者 Alt+Shift+Return
首先,您需要使用 #%% 分隔符将代码拆分为单元格,然后您可以选择运行或调试单元格。在下面的示例中,您运行第一个单元,然后调试第二个单元:
#%% SOME TIME CONSUMING CODE TO EXECUTE
...
...
#%% CODE TO DEBUG
...