Python,自动/编程地回答raw_input()和类似的提示?

时间:2015-11-26 14:26:42

标签: python debugging pdb

当我运行以下代码来调试f:

import pdb
f = lambda x: x**2
pdb.runcall(f, 11) # type step, to step through code.

我收到提示:

enter image description here

在此提示中,我可以输入命令,例如step来逐步执行感兴趣的功能(例如f)。

有没有办法自动提供step或其他命令,以便我可以自动浏览代码,并进行一些自动(粗略)逐行分析?

1 个答案:

答案 0 :(得分:1)

在gdb中有和-s选项从源文件中读取命令。我在pdb中不知道这样的选项,但是有一些东西可以用来自动化调试。第一个选项 - .pdbrc文件。 Pdb在启动时读取〜/ .pdbrc和./.pdbrc(如果存在),所以你可以放置任何设置,你想要的命令,你在pdb shell中输入的命令,除了执行管理命令,比如跳转,继续等等)。第二 - 别名。 Aliace主体可以包含pdb命令和python表达式,它们也可以是递归的。 也许它也可以从文件重定向输入流并在此之后保留在shell中。