如何在python调试器中加载模块

时间:2010-05-18 14:19:52

标签: python debugging

这看起来很简单,但到目前为止我找不到答案 -

我刚刚学习了python,需要开始学习pdb。在我的模块中,当模块作为程序运行时,我有通常的if __name__ == __main_技巧来执行一些代码。

到目前为止,我一直通过python -m mymod arg1 arg2语法

运行它

现在我想从pdb内部做同样的事情。通常在C中,我只会gdb mybinary后跟run arg1 arg2

但我无法弄清楚如何在pdb中实现同样的目的。

我确信必须有一种简单的方法来实现这一点,但是我花了太长时间才能找到它。

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

尝试:

python -m pdb mymod.py arg1 arg2

那应该启动pdb调试mymod.py(如果mymod.py不在当前目录中,那么你必须指定路径)。

或者在代码中设置要开始调试的断点。获取断点到pdb的常用方法是:

if somecondition:
    import pdb; pdb.set_trace()

您可以将条件设​​置为方便,以确保断点不会过早触发。