python可以调试而无需修改代码

Bry*_*unt 4 python debugging command-line

似乎调试python代码是一项简单的任务,只需插入以下行来触发调试器.

import pdb
pdb.set_trace()
Run Code Online (Sandbox Code Playgroud)

是的,所以我试过了,它的效果非常好.这是一个不错的调试器.

但有可能启动一个未经修改的python程序,可能指定一个文本文件,列出断点位置?这就是我通常用Java或Flash做的方式.

fra*_*xel 7

保存.pdbrc与脚本文件位于同一文件夹中的文件.输入你的断点信息:

b 3
b 5
b 70
b 89
Run Code Online (Sandbox Code Playgroud)

在pdb中运行您的脚本,如下所示:

python -m pdb myscript.py
Run Code Online (Sandbox Code Playgroud)

并且pdb将拾取并插入您的断点.不幸的是,它不会保存您在调试时对它们所做的任何更改.

或者,您可以在第一行指定它们

(Pdb) b 3;;b 5;;b 70;;b 89
Run Code Online (Sandbox Code Playgroud)


Woo*_*ble 6

文档中所述,您可以使用以下命令运行它:

python -m pdb myscript.py
Run Code Online (Sandbox Code Playgroud)