<p>当我遇到这个问题时,我<code>import pdb; pdb.set_trace()</code>在文件的开头(导入时间)或在<code>__main__</code>(运行时)中,然后使用调试器<code>list</code>(或仅使用<code>l</code>)命令来查找行号,<code>break</code>(或只是<code>b</code>)来设置断点。在</p>
<p>您也可以从一开始就以PDB模式启动程序并到达相同的点。在</p>
<pre><code>(Pdb) help break
b(reak) ([file:]lineno | function) [, condition]
With a line number argument, set a break there in the current
file. With a function name, set a break at first executable line
of that function. Without argument, list all breaks. If a second
argument is present, it is a string specifying an expression
which must evaluate to true before the breakpoint is honored.
The line number may be prefixed with a filename and a colon,
to specify a breakpoint in another file (probably one that
hasn't been loaded yet). The file is searched for on sys.path;
the .py suffix may be omitted.
</code></pre>
<p>例如,我将在第5行设置一个断点</p>
^{pr2}$
<p>现在,继续</p>
<pre><code>(Pdb) c
</code></pre>
<p>当到达断点时,您将输入Pdb。在</p>
<p>因为您只想看到第一次运行,所以只需删除断点</p>
<pre><code>(Pdb) help clear
cl(ear) filename:lineno
cl(ear) [bpnumber [bpnumber...]]
With a space separated list of breakpoint numbers, clear
those breakpoints. Without argument, clear all breaks (but
first ask confirmation). With a filename:lineno argument,
clear all breaks at that line in that file.
Note that the argument is different from previous versions of
the debugger (in python distributions 1.5.1 and before) where
a linenumber was used instead of either filename:lineno or
breakpoint numbers.
(Pdb) clear 1
Deleted breakpoint 1
(Pdb) c
</code></pre>