在Python中是否有任何理由使用try / except如果错误只是重新提出?

时间:2016-11-24 11:18:19

标签: python exception-handling

如果我要重新提升标准错误,是否有任何最佳做法,风格或程序化理由来捕捉标准错误?

换句话说,出于任何原因这样做是否更好:

try:
    do_something()
except StandardError:
    raise

而不仅仅是这个:

do_something()

我看到这个问题Does a exception with just a raise have any use?表示,当我理解某些错误为pass而其他错误为raise时,通常会使用此问题;并且它表明前者对于文档(?)和未来的占位符更有用,这都是人为原因。

我只是想知道是否有任何较低级别的答案,或者甚至只是哪个会被认为是Pythonic?

1 个答案:

答案 0 :(得分:1)

如果您想记录错误(例如),您可以这样做:

try:
    do_something()
except StandardError as ex:
    print(ex)
    raise

只是

try:
    do_something()
except StandardError:
    raise

明确表明您了解可能的异常,但不想抓住它。