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

How can I get method's "args" argument value in while using ipdb?

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

在命令前加上 ! 以禁用 pdb 魔法。

ipdb> !args

我经常设置虚拟变量,它们是 pdb magic 的一部分,然后使用它们

ipdb> aa = args