擅长:python、mysql、java
<p>不,Python的哲学是显式比隐式好。大多数希望定期抛出异常的Python函数,如dict.\uu getitem,都提供了返回默认值的等价版本,如听写. 你知道吗</p>
<p>我以前使用过new with context来表示类似的内容;代码如下所示:</p>
<pre><code>with ignoring(IOError, OSError):
# some non-critical file operations
</code></pre>
<p>但我也不需要归还任何东西。一般来说,整个函数级别都不适合这样做,如果您想在其他地方更优雅地处理错误,那么通过使用decorators,您将阻止任何实际获得错误的机会。你知道吗</p>
<p>而且,<code>except:</code>是非常危险的;您可能是指(至少)<code>except Exception:</code>,可能是指范围更广的东西,比如IOError或KeyError。否则,还将捕获诸如Ctrl-C、SystemExit和拼写错误的变量名之类的内容。你知道吗</p>