使用 ipdb 时如何获取方法的“args”参数值?

Jan*_*ski 2 python debugging ipdb

ipdb使用命令aargs打印有关方法提供的参数的信息时。如何获取实际args变量以便我可以处理提供的数据?

例如,当我有代码时:

class A(object):
    def test(*args, **kwargs):
        import ipdb; ipdb.set_trace()


A().test('testing arg')
Run Code Online (Sandbox Code Playgroud)

然后在运行代码后我试过:

ipdb> args
args = (<__main__.A object at 0x1007bdf90>, 'testing arg')
kwargs = {}
ipdb> args[0]
args = (<__main__.A object at 0x1007bdf90>, 'testing arg')
kwargs = {}
ipdb>
Run Code Online (Sandbox Code Playgroud)

Dan*_*man 7

为您的命令添加前缀!以禁用 pdb 魔法。

ipdb> !args
Run Code Online (Sandbox Code Playgroud)