python pdb:进入从控制台调用的函数

时间:2015-02-28 01:25:35

标签: python python-2.7 pdb spyder

注意:为了快速解释这一点,我将从在Spyder工作的角度谈论这个问题。

如果在我的代码中调用了a函数,我可以在它被调用的位置旁边放置一个断点,然后当我的代码到达那一点时,我可以单击" Step into function .. "按钮,查看此功能内部发生的情况。

假设我在某个任意断点处想要查看在我的代码中没有的函数内部发生了什么。有没有办法通过pdb控制台调用此函数,并且"进入"说函数调用?

2 个答案:

答案 0 :(得分:1)

您可以使用ipdb。将ipdb.set_trace()放在要调试的地方。然后按s进入该功能。

答案 1 :(得分:-1)

你试过功能装饰器吗? (也许读一下)

def foo():
    print 'Hello pdb'

def add_breakpoint(func):
    def func_wrapper(*args, **kwargs):
        pdb.set_trace()
        return func(*args, **kwargs)
    return func_wrapper

foo = add_breakpoint(foo)

这将在您的调试中添加一些调用,但它将完成工作。 希望听到是否有效!