В настоящее время я работаю над проектом python, который содержит подмодули и использует numpy / scipy. Ipython используется как интерактивная консоль. К сожалению, я не очень доволен рабочим процессом, который использую сейчас, я был бы признателен за совет.
В IPython фреймворк загружается простой командой import
. Однако часто бывает необходимо изменить код в одном из подмодулей фреймворка. На данный момент модель уже загружена, и я использую IPython для взаимодействия с ней.
Теперь структура содержит множество модулей, которые зависят друг от друга, то есть, когда структура изначально загружена, основной модуль импортирует и настраивает подмодули. Изменения в коде выполняются только в том случае, если модуль перезагружается с помощью reload (main_mod.sub_mod)
. Это громоздко, так как мне нужно перезагружать все измененные модули по отдельности, используя полный путь. Было бы очень удобно, если бы reload (main_module)
также перезагружал все подмодули, но без перезагрузки numpy / scipy ..
Любые подобъекты не будут перезагружены этим, я полагаю, что необходимо использовать deepreload IPYTHON для этого.
Обратите внимание, что вышеупомянутое autoreload
только работы в IntelliJ, если Вы вручную сохранили измененный файл (например, использующий ctrl+s или cmd+s). Это, кажется, не работает с автоматическим сохранением.