sys.exit ()

sys.exit ( [ arg ] )

Выход из Python. Это реализуется путем вызова исключения SystemExit, поэтому выполняются действия по очистке, указанные в предложениях finally в операторах try, и есть возможность перехватить попытку выхода на внешнем уровне.

Необязательный аргумент arg может быть целым числом, дающим статус выхода (по умолчанию равным нулю), или другим типом объекта. Если это целое число, то ноль считается «успешным завершением», а любое ненулевое значение считается «аварийным завершением» оболочками и т.п. Большинство систем требует, чтобы он находился в диапазоне 0–127, в противном случае результаты не определены. Некоторые системы имеют соглашение о присвоении определенных значений конкретным кодам выхода, но они, как правило, недостаточно развиты; программы Unix обычно используют 2 для синтаксических ошибок командной строки и 1 для всех других ошибок. Если передается другой тип объекта, None эквивалентно передаче нуля, а любой другой объект печатается в stderr и приводит к коду выхода 1. В частности, sys.exit («некое сообщение об ошибке») - это быстрый способ выйти из программы при возникновении ошибки.

Поскольку exit () в конечном итоге «только» вызывает исключение, он выйдет из процесса только при вызове из основного потока, и исключение не будет перехвачено.

Изменено в версии 3.6: если при очистке возникает ошибка после того, как интерпретатор Python перехватил SystemExit (например, ошибка сброса буферизованных данных в стандартных потоках), статус выхода изменяется на 120.

Last updated