1
参见下面的例子:pdb:“var = value”没有在当前函数中创建var?
[STEP 103] # cat -n foo.py
1 def func():
2 v = another_func()
3 print v
4
5 func()
[STEP 104] # pdb foo.py
> /root/tmp/foo.py(1)<module>()
-> def func():
(Pdb) break 2
Breakpoint 1 at /root/tmp/foo.py:2
(Pdb) cont
> /root/tmp/foo.py(2)func()
-> v = another_func()
(Pdb) v = 123 <-- manually create the var
(Pdb) jump 3 <-- skip another_func()
> /root/tmp/foo.py(3)func()
-> print v
(Pdb) next
UnboundLocalError: "local variable 'v' referenced before assignment"
> /root/tmp/foo.py(3)func()
-> print v
(Pdb)
哪里VAR v
,如果它不是在func()
产生的?
男人,PDB文件真的没有说清楚。 – user2357112
[看起来像这可能是一个错误](http://bugs.python.org/issue22577),但它看起来并不像任何人关心回复错误报告或做任何事情。 – user2357112
这是我第一次尝试'跳'跳过一些代码。 – pynexj