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

问题描述 投票:2回答:2

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

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

假设我处于某个任意断点,并希望看到在我的代码中不存在的函数内部发生了什么。有没有办法通过pdb控制台调用此函数并“步入”所述函数调用?

python python-2.7 pdb spyder
2个回答
1
投票

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


-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)

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

© www.soinside.com 2019 - 2024. All rights reserved.