如何在pdb(python)中使用debug命令

时间:2016-12-01 01:07:29

标签: python python-3.x debugging pdb

我想知道如何在pdb中使用debug命令?

(Pdb) help

Documented commands (type help <topic>):
========================================
EOF    c          d        h         list      q        rv       undisplay
a      cl         debug    help      ll        quit     s        unt
alias  clear      disable  ignore    longlist  r        source   until
args   commands   display  interact  n         restart  step     up
b      condition  down     j         next      return   tbreak   w
break  cont       enable   jump      p         retval   u        whatis
bt     continue   exit     l         pp        run      unalias  where

Miscellaneous help topics:
==========================
pdb  exec
(Pdb) help debug
debug code
        Enter a recursive debugger that steps through the code
        argument (which is an arbitrary expression or statement to be
        executed in the current environment).
(Pdb) debug print('hello')
ENTERING RECURSIVE DEBUGGER
> <string>(1)<module>()->None
((Pdb)) n
hello
--Return--
> <string>(1)<module>()->None
((Pdb)) n
LEAVING RECURSIVE DEBUGGER
(Pdb)

2 个答案:

答案 0 :(得分:0)

让,你有一堆代码。你把pdb说成第3行。

在这种情况下,当您运行程序时,第1行和第2行会自动执行,您可以通过放置变量名来查看结果,并且不会执行第4行。

如果你想看到第3行的结果,你必须编写你想看到的结果的代码,或者你可以使用n进入下一行,而c继续这意味着退出调试模式。

答案 1 :(得分:0)

这个问题使我困惑了很多年。我总是忘记搜索最终答案。但是今天我明白了,并分享我在这里找到的东西。

How can I debug manually typed expression and statements in pdb?

当您第一次处于递归调试模式时,键入s,您将了解下一步的操作。