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

Why my python code terminates even though I have proper exception handling?

我有以下 python 代码:

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

它应该 return 总是 0 但是当我 运行 它时,它打印 'Terminated' 然后我收到一个非零的 return 代码。

现在,sys.exit(0) 只会在引发异常时调用。为确保每次都被调用,添加finally语句:

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