Я работаю над ID Spyder версии 3.0.0. Моя версия python - 2,7.12. По какой-то причине механизм atexit не работает в этой конкретной среде IDE.Функция Python atexit не вызывается в Spyder IDE
Код
import atexit
def done():
print '2'
atexit.register(done)
print '1'
Результат
При запуске сценария в PyCharm или CMD для Windows, он печатает:
1
2
Когда я запускаю его из Spyder, выполняемая функция не вызывается, а 2 не печатается. Окончательный результат:
1
ли кто-нибудь знает, почему это и как я могу это исправить?
Спасибо!
Код, который вы дали никогда не будет печатать '1' или' 2' ... – linusg
@linusg, спасибо, это была более старая версия. Я обновил вопрос – drorco
Насколько я могу судить, 'atextit' только вызывает зарегистрированные функции, когда программа завершается без кода ошибки, поэтому убедитесь, что она не прерывается или не прерывается внезапно. – linusg