Использование atexit.register(function)
для регистрации функции, которая будет вызываться при выходе из сценария python, является обычной практикой.Альтернатива модулю atexit python, который работает при вызове из других скриптов
Проблема в том, что я идентифицировал случай, когда это не увенчалось уродством: если ваш скрипт выполнен из другого скрипта python с использованием execfile()
.
В этом случае вы обнаружите, что Python не сможет найти вашу функцию, когда она выйдет, и это имеет смысл.
Мой вопрос заключается в том, как сохранить эту функциональность таким образом, чтобы эта проблема не возникала.
Можете ли вы предоставить более подробную информацию? Образец, который терпит неудачу? Как показывает @bstpierre, это работает нормально. –