2015-11-26 24 views
0

當我運行下面的代碼來調試F:Python,自動/以編程方式回答raw_input()和類似的提示?

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

在gdb中有和選項-s從源文件讀取命令。我不知道pdb中有這樣的選項,但是有一些東西,你可以用它來自動調試。第一個選項 - .pdbrc文件。在啓動時,Pdb會讀取〜/ .pdbrc和./.pdbrc(如果存在),所以您可以放置​​任何設置,您需要(命令,您在pdb shell中輸入的內容,除了執行管理命令,如跳轉,繼續等)。第二 - 別名。 Aliace體可以包含pdb命令和python表達式,並且它們也可以是遞歸的。 也許也可以重定向來自文件的輸入流並保留在shell中。