/ / Как да подредя подпрограмите в бележника на Юпитер, за да напиша проект ефективно? - python, ipython, ipython-notebook, jupyter, jupyter-notebook

В тетрадка Jupyter, как мога да подредя подпрограми, за да напиша проекта ефективно? - питон, ипитон, ипитон-тетрадка, юпитер, юпитер-тетрадка

Бих искал да напиша програма с помощта на Python вЮпитер. За да улесните нещата, би било по-добре да напишете няколко подпрограми (функции) и вероятно някои дефинирани от потребителя класове преди да напишете основния скрипт. Как да ги подредя в Юпитер? Просто всяка подфункция / клас за нов ред и пишете последователно и след това напишете основния скрипт по-долу, за да извикате подпрограми? Просто се чудя дали това е правилният начин да използвате Jupyter.

Аз съм нов за Юпитер и Питон, но в Matlab,например, бих създал папка, която съдържа всички подфункции, които да се използват. И аз също ще напиша скрипт в същата папка, за да извикам тези функции, за да изпълня задачата. Как обаче да постигна това в Python с помощта на Jupyter?

Отговори:

-1 за отговор № 1

Най-доброто нещо за повторен код, който искатецялото ви бележник за достъп е да го добавите в директорията на профила. Бележникът ще зареди всички скриптове от тази директория по ред, така че препоръчително е да нареждате файлове 01-<projname>.py ако искате те да се заредят в определен ред. Всички файлове в тази директория ще бъдат заредени чрез exec който изпълнява файла, сякаш е във вашияконтекст, това не е натоварване на модул, така че глобалите ще се разпръснат един друг и целият контекст на модела ще бъде във вашето местно пространство на имена след това (подобно на import * ефект).

За да намерите вашата директория с профили, документите ви препоръчват да използвате ipython locate profile <my_profile_name>, Това ще ви каже къде можете да поставите скрипта.


2 за отговор № 2

Използвам тетрадките главно за анализ на данни. Моят работен процес е следният: По време на разработката декларирам всички свои съчетания в клетките на тетрадката. Когато имам нужда от същите функции за следващия набор от данни, доста често ги копирам и поставям в новия тефтер. Доста често се налага леко да адаптирам функциите за новия набор от данни. Когато се оказа, че често използвам функции в преносимите компютри, създавам отделен модул (например файл python с функциите, копирани в него) и поставям тази моя „глобална“ директория python (~/python) в моята система. Тази функция е в моята $pythonpathи, следователно, в следващата тетрадка мога просто да кажа

from read_data_functions import square_measurement, long_run