Есть ли способ очистить пакет Python?

Пакеты Python имеют явные средства для инициализации при импорте ("обязательный") __init__.py сценарий); Есть ли какой-то способ получить обратное (то есть: определить сценарий, который будет запускаться всякий раз, когда Package выгружается, либо явно, либо потому, что интерпретатор завершается)?

Мое текущее использование будет:

У меня есть простой сервер, который получает команды через именованный канал, поэтому первое __init__.py делает, чтобы создать такой канал (вместе с другими инициализациями). Я хотел бы "автоматически" удалить файл, когда пакет отключен, по любой причине (насколько это возможно).

1 ответ

Решение

Вы можете использовать модуль ateexit

https://docs.python.org/2/library/atexit.html

зарегистрируйте свою функцию очистки в файле __init__

Другие вопросы по тегам