我怎样才能获得方法" args"使用ipdb时的参数值?

时间:2018-01-08 13:18:29

标签: python debugging ipdb

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

例如,当我有代码时:

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


A().test('testing arg')

然后在运行代码后我尝试了:

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

2 个答案:

答案 0 :(得分:3)

使用!添加命令以禁用pdb魔法。

ipdb> !args

答案 1 :(得分:0)

我经常设置伪变量,这些伪变量是pdb魔术的一部分,然后使用它们

ipdb> aa = args