为什么即使我有适当的异常处理,我的python代码也会终止?

时间:2018-08-29 20:47:19

标签: python exception-handling subprocess

我有以下python代码:

try:
    subprocess.check_output('service uwsgi stop;pkill -f uwsgi', shell = True)
except:
    sys.exit(0)

它应该始终返回0,但是当我运行它时,它会显示“ Terminated”,然后我收到一个非零的返回码。

1 个答案:

答案 0 :(得分:2)

现在,sys.exit(0)仅在引发异常时被调用。为了确保每次都调用它,请添加一个finally语句:

try:
    subprocess.check_output('service uwsgi stop;pkill -f uwsgi', shell = True)
except:
    # Handle the exception
finally:
    sys.exit(0)