从Python 3的try-catch块内部退出脚本

时间:2019-07-13 13:04:08

标签: python try-catch exit

我正在尝试从try: except:块内部退出脚本,除了它会继续处理异常情况。

这些都不是...

try:
    exit()
except:
    pass()

try:
    quit()
except:
    pass

import sys
try:
    sys.exit()
except:
    pass

...退出我的脚本,他们只是继续进行例外情况。

我如何从这些块之一中退出脚本?

1 个答案:

答案 0 :(得分:2)

所有这些示例都引发SystemExit异常,而您正在捕获该异常,空白的except子句将捕获所有异常。

这就是为什么您应始终指定要捕获的异常或至少使用except Exception的原因,例如

try:
    exit()
except Exception:
    pass

try:
    quit()
except Exception:
    pass

import sys
try:
    sys.exit()
except Exception:
    pass

有了这一更改,所有示例都将导致您的Python应用退出