Класс Jupyter в другой записной книжке? - PullRequest
0 голосов
/ 28 февраля 2019

В настоящее время я вынужден работать с ноутбуком Jupyter, прежде чем просто использовать PyCharm.Поэтому я создаю проект и хотел бы добавить к нему несколько классов.Должен ли я записать их все в одну основную тетрадь или создать разные тетради для каждого класса?Насколько я понимаю, jupyter не предназначен для использования нескольких тетрадей для одного проекта (но я думаю, что есть варианты), но если я хочу использовать некоторые из моих классов более общего для других проектов, нет смысла не иметь его вотдельный ноутбук, верно?

Извините, может быть, у меня есть базовое недопонимание по jupyter, но я пока не могу понять, как лучше.

Ответы [ 2 ]

0 голосов
/ 28 февраля 2019

Jupyter с радостью позволит вам использовать несколько библиотек в других ноутбуках.Вы можете найти документы здесь
Хотя, если вы хотите переместить проект в исполняемый файл командной строки, вы можете рассмотреть возможность экспорта записных книжек в виде файлов .py, а затем импортировать их как стандартные библиотеки Python.,Для этого у Jupyter есть метод nbconvert .

Я много занимаюсь этим, и в итоге я написал небольшой скрипт, который добавляет соответствующие строки хэш-банга и удаляет любые "магические" команды Jupyter.Вы можете найти его в github .

Использование: ./nbconvert myNotebook.ipynb

Есть также несколько превосходных магических команд Jupyter, которые значительно облегчают работу с библиотеками.

# cause chagnged modules to be reloaded at execution
# add this to any notebook that sources an external .py file
%load_ext autoreload
%autoreload 2

Я также считаю это полезным:

# set %magic alias to convert the current notebook into a .py file
%alias nbconvert ~/devtools/nbconvert thisNotebook.ipynb

Использование:

%nbconvert
[NbConvertApp] Converting notebook searchTools.ipynb to python
0 голосов
/ 28 февраля 2019

Вам не обязательно нужны записные книжки, вы можете создавать файлы .py с вашими реализациями классов, например, myclass.py, а затем просто делать import myclass

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...