Почему мой код Python завершается, даже если у меня правильная обработка исключений? - PullRequest
0 голосов
/ 29 августа 2018

У меня есть следующий код Python:

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

он должен всегда возвращать 0, но когда я его запускаю, он печатает «Прервано», а затем я получаю ненулевой код возврата.

1 Ответ

0 голосов
/ 29 августа 2018

Прямо сейчас, sys.exit(0) будет вызываться только при возникновении исключения. Чтобы он вызывался каждый раз, добавьте оператор finally:

try:
    subprocess.check_output('service uwsgi stop;pkill -f uwsgi', shell = True)
except:
    # Handle the exception
finally:
    sys.exit(0)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...