如何交互式忽略Python循环内特定断点并跳转至指定行?
解决循环内断点跳过问题的几种方法
方法一:用until命令(最直接)
当你第一次停在循环内的断点(第3行)时,直接输入:
until
这个命令会让pdb执行到当前循环的结束位置,跑完100次循环后自动执行第4行的print("after loop"),然后停在第5行的断点上,完全符合需求。
方法二:给第5行加临时断点后继续
- 停在第3行的断点时,输入命令给第5行设置断点:
b 5 - 然后输入继续命令:
c
pdb会直接跳过循环内的所有断点,执行到第5行的断点停下。如果之后不需要这个断点,可输入clear 5删除。
方法三:正确使用ignore命令(解决你之前的失败问题)
你之前用ignore没成功,大概率是没找对断点编号或者忽略次数:
- 停在第3行的断点时,先输入查看所有断点的命令:
info break
你会看到类似这样的输出,比如循环内的断点编号是1:Num Type Disp Enb Address What 1 breakpoint keep y <module> 3 - 然后输入忽略命令,指定断点编号和忽略次数(这里要忽略100次):
ignore 1 100 - 最后输入继续命令:
c
这样这个断点会被跳过100次,跑完整个循环后,就会停在第5行的断点上。
内容的提问来源于stack exchange,提问作者wim
相关产品推荐
相关产品推荐

