擅长:python、mysql、java
<p>据我所知,stdlib中没有这样的东西。首先,这是一个坏习惯:你应该永远不要使用一个空的<code>except</code>。(相反,请指定要捕获的异常;这样,就不会捕获所有异常!)你知道吗</p>
<p>这里有个装饰师:</p>
<pre><code>>>> def defaultval(error, value):
... def decorator(func):
... def defaulted(*args, **kwargs):
... try:
... return func(*args, **kwargs)
... except error:
... return value
... return defaulted
... return decorator
...
>>> @defaultval(NameError, "undefined")
... def get_var():
... return name
...
>>> get_var()
'undefined'
</code></pre>