Создаем свои расширения в Ipython
В данной статье рассмотрим, как создавать собственные и запускать готовые расширения в IPython для автоматизации выполнения рутинных действий, добавления новой функциональности и модификации поведения оболочки.
Процесс создания расширения описан в мануале. В директорию с файлами расширений ipython (по умолчанию находится по адресу ~\.ipython\extensions) помещается питоновский файл с двумя функциями следующего вида:
Затем модуль загружается магической командой (происходит вызов соответствующей функции):
%load_ext имя
Для осуществления перезагрузки и выгрузки модуля можно воспользоваться командами:
%reload_ext имя
%unload_ext имя
Они сопровождаются вызовами соответствующих функций из файла расширения (в случае %reload - сначала unload_ipython_extension, затем load_ipython_extension).
Продемонстрируем их работу на простеньком примере. Создадим расширение с именем my_ext (а файл - my_ext.py) и следующим содержанием:
Сначала загрузим модуль:
а теперь перезагрузим и выгрузим:
Также можно предусмотреть автоматическую загрузку расширения на старте самого IPython. Для этого в конфигурационный файл (по адресу ~\.ipython\profile_default\ipython_config.py) требуется добавить расширение:
c.InteractiveShellApp.extensions = [ 'имя_расширения' ]
Если конфигурационный файл отсутствует, его можно создать командой:
ipython profile create [имя]
Подробнее о создании профилей, можно прочитать здесь.