将断点保存到文件



调试我的Python代码时,我从命令行通过ipdb运行脚本,并设置了许多断点。然后,我在一个或多个模块中进行一些更改,然后重新运行。但是,如果我只是使用运行模块,请不要重新加载。 为了确保它们这样做,我可以完全存在并重新启动 Python,但是我需要重置所有断点,如果我有很多断点并且一遍又一遍地完成,这很乏味。

有没有办法将断点保存到 (i(pdb 中的文件中,以便在不更改行号的小更改之后,我可以转储断点、重新启动 Python + pdb 并重新加载断点? 相当于 Matlabs X = dbstatus、保存/加载X和设置dbstop(X)

您可以将断点保存到工作路径中的.pdbrc文件,也可以将断点全局保存到主目录。 文件应如下所示:

# breakpoint 1
break /path/to/file:lineno
# breakpoint 2
break /path/to/file:lineno

您可以通过各种方式定义断点,就像在交互模式下一样。因此,只需break 4break method也可以。

这个文件适用于 pdb 和 ipdb,因为后来有 pdb 拥有的一切等等。

奖金

可以使用alias更轻松地保存断点。例如:

# append breakpoint to .pdbrc in current working directory
# usage: bs lineno
alias bs with open(".pdbrc", "a") as pdbrc: pdbrc.write("break " + __file__ + ":%1n")

将上面放到您的全局 .pdbrc 并像这样使用它:

> bs 15

这会将断点语句追加到当前文件第 15 行的本地 .pdbrc 文件中。

这不是完美的解决方案,但对我来说足够接近。根据需要调整命令。

在此处阅读有关别名的更多信息。

相关内容

  • 没有找到相关文章

最新更新