ipdb
使用命令a
或args
打印有关为方法提供的参数的信息。如何获取实际的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 魔术的一部分,然后使用这些变量
ipdb> aa = args