Есть ли способ очистить пакет Python?
Пакеты Python имеют явные средства для инициализации при импорте ("обязательный") __init__.py
сценарий); Есть ли какой-то способ получить обратное (то есть: определить сценарий, который будет запускаться всякий раз, когда Package выгружается, либо явно, либо потому, что интерпретатор завершается)?
Мое текущее использование будет:
У меня есть простой сервер, который получает команды через именованный канал, поэтому первое __init__.py
делает, чтобы создать такой канал (вместе с другими инициализациями). Я хотел бы "автоматически" удалить файл, когда пакет отключен, по любой причине (насколько это возможно).
1 ответ
Решение
Вы можете использовать модуль ateexit
https://docs.python.org/2/library/atexit.html
зарегистрируйте свою функцию очистки в файле __init__