如何通过pdb在python类的成员函数中设置断点?

时间:2017-09-06 03:48:08

标签: python pdb

例如:

class A:
    def func(self):
        pass

如何在使用python pdb调试时在func中设置bp?我试过b A::funcb funcb A.func,虚空是有效的......

谢谢〜

2 个答案:

答案 0 :(得分:2)

设置断点

您可以执行以下操作并正常运行代码:

class A:
    def func(self):
        import pdb; pdb.set_trace()
        pass

将import和set_trace()命令放在同一行上可以轻松清理。

导航

运行程序时应出现调试提示。使用pdb快捷方式来调试调试器:

  • s(tep):执行当前行,在第一个可能的场合停止(在被调用的函数中或当前函数的下一行)。
  • n(ext):继续执行,直到达到当前函数的下一行或返回。 (下一步和步骤之间的区别在于步骤在被调用函数内停止,而下一步以(几乎)全速执行被调用函数,仅停止在当前函数的下一行。)
  • unt(il):继续执行,直到达到行号大于当前行的行或从当前帧返回。
  • r(eturn):继续执行,直到当前函数返回。
  • c(ont(inue)):继续执行,仅在遇到断点时停止。

请参阅https://docs.python.org/2/library/pdb.html

上的文档

答案 1 :(得分:0)

import pdb

class A:
 def func(self):
    pdb.set_trace()
    pass