有没有办法在pdb中完全跳过一行或两行?
说我有一个pdb会话:
> print 10
import pdb; pdb.set_trace()
destroy_the_universe() # side effect
useful_line()
我想直接进入useful_line()而不再调用pdb()或破坏宇宙。 有没有办法跳过(即不执行代码)
之间的内容print 10和useful_line()?
答案 0 :(得分:21)
使用j
/ jump
命令:
test.py包含:
def destroy_the_universe():
raise RuntimeError("Armageddon")
def useful_line():
print("Kittens-r-us")
print(10)
import pdb; pdb.set_trace()
destroy_the_universe()
useful_line()
然后:
C:\Temp>c:\python34\python test.py
10
> c:\temp\test.py(9)<module>()
-> destroy_the_universe()
(Pdb) l
4 def useful_line():
5 print("Kittens-r-us")
6
7 print(10)
8 import pdb; pdb.set_trace()
9 -> destroy_the_universe()
10 useful_line()
[EOF]
(Pdb) j 10
> c:\temp\test.py(10)<module>()
-> useful_line()
(Pdb) c
Kittens-r-us