2
Есть ли способ установить код выхода в функции, зарегистрированной в модуле atexit
и вызывается при выходе? Вызов sys.exit(code)
вызывает ошибку и не устанавливает код выхода в нужное значение.Установка кода выхода в обратном вызове atexit
d:\>python atexit_test.py
Error in atexit._run_exitfuncs:
Traceback (most recent call last):
File "atexit_test.py", line 3, in myexit
sys.exit(2)
SystemExit: 2
d:\>echo %ERRORLEVEL%
0
Содержание atexit_test.py
:
def myexit():
import sys
sys.exit(2)
import atexit
atexit.register(myexit)
Какая версия Python используется? Я могу воспроизвести его на Python 3.5.1, но он отлично работает (как 'sys.exit', так и повышение' SystemExit') в Python 2.7.10. Можете ли вы использовать правильный тег (python-2.x или python-3.x)? –
@Rogalski Я использую Python 3.5.1. – Melebius