<p>我在Python<code>except</code>子句中有一些代码打算进行一些日志记录,但是日志记录代码本身可能会导致异常。在我的例子中,我只想忽略可能发生的任何第二个异常,并引发原始异常。下面是一个非常简单的示例:</p>
<pre><code>try:
a = this_variable_doesnt_exist
except:
try:
1/0
except:
pass
raise
</code></pre>
<p>运行上面的代码,我希望得到:</p>
<pre><code>NameError: name 'this_variable_doesnt_exist' is not defined
</code></pre>
<p>但是,在Python 2.x中,我得到:</p>
<pre><code>ZeroDivisionError: integer division or modulo by zero
</code></pre>
<p>我发现在Python3.x中,它可以做我想做的事情。</p>
<p>我在Python2.x文档中找不到关于这个的评论(除非我错过了)。我能在2.x内完成吗?</p>