3

我有一个名为 foo.py 的文件。在该文件中,我有一堆函数,我想调试其中一个,foo.bar通过设置断点调用,但不使用set_trace. 我在 IPython 控制台中工作,我知道有一个%debug魔术函数可用于此目的,语法如下:

%debug [--breakpoint FILE:LINE]

所以我尝试

%debug --breakpoint foo.py:10

在第 10 行设置断点。但是,我如何实际执行代码以便 IPython 识别断点?正在做

import foo
foo.bar()

不起作用,因为断点只是被跳过了。

4

1 回答 1

3

这样做的方法:

from foo import bar
%debug --breakpoint /path/to/foo.py:10 bar()

这将导入bar命名空间并使用模块第 10 行的断点运行它。

于 2018-07-27T21:51:44.683 回答