Image

Imageyosefk wrote in Imageru_python

Как перезагрузить все?

Есть функция reload(module), вроде для перезагрузки импортированного модуля, на случай, если он изменился. Что именно она перезагружает (определения в самом модуле, или еще и все модули, которые он импортирует, ...), и что происходит со старыми объектами?

Я работаю в IPython (видимо, в idle или просто в python shell происходит то же самое). Периодически перезагружаю модули, которые поменял. Понять, что надо перезагрузить, бывает нелегко. А работать интерактивно приятней, чем писать мелкие скрипты с комманд лайном по каждому поводу. Хотелость бы как-нибудь перезагрузить все сразу, но что-то подсказывает, что старые объекты будут вести себя по-старому, и не все так просто.

Что же, собственно, делает reload (что грузит, что меняет, и чего не меняет), и как перезагрузить побольше и попроще? Что такое загруженный модуль, когда рождается и когда умирает питоний код, как все это относится к модулям на С (после ребилда такого модуля ничего, кроме выхода из процесса, не помогло) - вот лишь некоторые вопросы, ответы на которые скрасят мою жизнь в Питоне.