考虑以下两个例子: x = 1; y = 2; z = 3
和: for i in range(3): print(i)
在后者,如果你通过这个在调试步骤一样PDB,你会把它会停在print(i)在循环的每次迭代。 但是在第一个例子中,它会停止一次。 进一步调查,拆分多语句行,我们看到实际上有两个条目用于第一行co_lnotab。但dis.dis()就在于此。 至于对于循环,lnotab中
显示表达式:每次更改时打印出表达式的值。这对于监视循环中变化的变量的值很有用。因此,假设下面的代码是: for i in range(100):
for j in range(100):
a=f(i,j)
我知道的东西是不对的a=f(i,j)为i和j的特定值执行。那么,如何使用pdb模块的display命令找出i和j在不工作时的值?我想当你使用display命令时,它会自
我怀疑我有问题,在我的循环,所以我设置与pdb.set_trace一个破发点() import pdb
for i in range(100):
print("a")
pdb.set_trace()
print("b")
在这个循环中检查变量几次后,我决定继续这个编程而没有进一步的中断。所以我尝试使用b命令获得中断号码,没有中断列表。我想这行代码不会设置一个断点
如何重复多个命令? Multiple commands may be entered on a single line, separated by ;;.
[...]
Entering a blank line repeats the last command entered.
我已经尝试: n ;; l
<ENTER>
但只有list命令将被重复。 用pdb粘贴(no ipdb &