就写吧
pass
如
try:
# Do something illegal.
...
except:
# Pretend nothing happened.
pass
编辑:@swillden 提出了一个很好的观点,即,总的来说,这是一个糟糕的想法。你至少应该说
except TypeError, DivideByZeroError:
或者您想要处理的任何类型的错误。否则你可能会掩盖更大的问题。
对于那些非常不清楚为什么要这样做的人。这是一个例子,我最初认为空块是个好主意:
def set_debug_dir(self, debug_dir=None):
if debug_dir is None:
debug_dir = self.__debug_dir
elif isinstance(debug_dir, (Path, str)):
debug_dir = debug_dir # this is my null operation
elif isinstance(debug_dir, list):
debug_dir = functools.reduce(os.path.join, debug_dir)
else:
raise TypeError('Unexpected type for debug_dir: {}'.format(type(debug_dir).__name__))
但是重新整理一下声明会更清晰:
def set_debug_dir(self, debug_dir=None):
if debug_dir is None:
debug_dir = self.__debug_dir
elif isinstance(debug_dir, list):
debug_dir = functools.reduce(os.path.join, debug_dir)
elif not isinstance(debug_dir, (Path, str)):
raise TypeError('Unexpected type for debug_dir: {}'.format(type(debug_dir).__name__))
我从未在更永久的代码中这样做过,但我经常将其作为占位符
if some_expression:
True
else:
do_something(blah)
只需在其中粘贴 True 即可停止错误。不知道这是否有什么不好。