Jupyter — бесплатная программа для работы с блокнотами: документами, в которых куски кода, их результат, графики и обычный текст с пояснениями лежат друг под другом в одном файле. Код запускается по частям, прямо под ячейкой появляется таблица или диаграмма, и всё это сохраняется в файле с расширением IPYNB.
Устроено это необычно: Jupyter ставится на компьютер как программа, но интерфейс открывается в браузере — по адресу на вашей же машине. Данные при этом никуда не уходят, браузер нужен только как окно. Главное отличие от обычного редактора кода в том, что программа не выполняется целиком от начала до конца: вы меняете одну ячейку и пересчитываете только её, а переменные остаются в памяти. Для расчётов, где каждый шаг нужно посмотреть глазами, это намного удобнее.
Что умеет Jupyter
- Ячейки с кодом и выводом — результат появляется прямо под кодом: число, таблица, картинка, график. Пересчитать можно любую ячейку, не запуская всё заново.
- Текст и формулы — между кодом вставляются ячейки с обычным текстом, заголовками, списками и математическими формулами. Из блокнота получается готовый отчёт, который понятен и без объяснений автора.
- Два интерфейса — классический Jupyter Notebook, где открыт один блокнот, и JupyterLab: окно с файловым деревом, несколькими вкладками, терминалом и панелями рядом. JupyterLab сегодня основной вариант.
- Ядра для разных языков — Jupyter сам по себе не язык. По умолчанию блокноты работают на Python, но через дополнительные ядра к нему подключают R, Julia и другие языки. Название проекта как раз и сложилось из Julia, Python и R.
- Графики внутри блокнота — диаграммы, карты и интерактивные графики рисуются в самом документе, их не нужно сохранять отдельными картинками.
- Экспорт — готовый блокнот выгружается в HTML, PDF или обычный скрипт на Python. Файл HTML можно просто отправить человеку: он откроет его в браузере без установки Jupyter.
- Расширения — к JupyterLab ставятся дополнения: подсветка ошибок, оглавление документа, панели для таблиц, помощники с подсказками.
- Работа на сервере — Jupyter часто запускают не на своём компьютере, а на мощной машине и открывают в браузере по сети. Так считают на больших данных, не нагружая ноутбук.
Кому подходит
- Тем, кто учится анализу данных: почти все курсы и учебники раздают материалы именно в блокнотах, и задания выполняются в них же.
- Аналитикам и экономистам: разобрать выгрузку, посчитать показатели, нарисовать график и приложить к цифрам объяснение — всё в одном файле.
- Исследователям и студентам: расчёты в лабораторной работе видны по шагам, а преподаватель может повторить их у себя.
- Тем, кто пробует машинное обучение: модель удобно обучать и проверять частями, не перезапуская весь скрипт.
- Тем, кто ведёт рабочие записи с расчётами: блокнот заменяет и черновик, и отчёт.
- Не подходит, если нужно написать программу, которую потом будут запускать по расписанию или отдавать пользователям: для этого берут обычные файлы с кодом и редактор вроде Visual Studio Code или PyCharm.
Плюсы
- Код, результат и пояснения лежат в одном файле
- Любую ячейку можно пересчитать отдельно
- Графики и таблицы видны сразу под кодом
- Бесплатно, открытый код, работает без аккаунта
- Один блокнот открывается и у вас, и у коллеги, и на сервере
Минусы
- Ячейки можно запустить в произвольном порядке и получить результат, который потом не повторится
- Интерфейс и документация только на английском
- Нет автодополнения и отладчика уровня полноценной среды разработки
- Блокноты неудобно сравнивать в системах контроля версий
- Для больших программ формат не подходит
Сколько стоит
Jupyter полностью бесплатен, с открытым кодом и без платной версии. Его развивает некоммерческий проект Project Jupyter, живущий на гранты и поддержку компаний. Регистрация не нужна: вы запускаете программу у себя, и никакой учётной записи она не требует.
Платными бывают только облачные сервисы, которые дают блокноты Jupyter на чужих серверах с мощными процессорами и видеокартами. Это отдельные продукты разных компаний, а не версия самого Jupyter, и для учёбы и домашних расчётов они не нужны.
Как установить
- Если Python ещё не стоит, установите его с сайта python.org или поставьте сборку Anaconda — в ней Jupyter уже есть, и этот шаг последний.
- Создайте для работы папку и виртуальное окружение, чтобы пакеты проекта не смешивались с системными.
- В активированном окружении выполните команду
pip install jupyterlab— она скачает JupyterLab и всё, что ему нужно. - Запустите командой
jupyter lab: в терминале появится адрес, а браузер откроет интерфейс сам. Файлы вы увидите те, что лежат в папке запуска. - Создайте новый блокнот кнопкой в интерфейсе, напишите в первой ячейке строку кода и нажмите сочетание клавиш для запуска ячейки — результат появится под ней.
Частые вопросы
Работает ли Jupyter в России?
Да, без ограничений. Программа работает на вашем компьютере, в интернет она выходит только чтобы скачаться при установке. Сайт jupyter.org и хранилище пакетов доступны.
Есть ли русский язык?
Интерфейс и документация — на английском, меню и подсказки не переведены. Русский текст и русские названия файлов внутри блокнотов работают нормально.
Нужен ли интернет для работы?
Нет. После установки блокноты открываются и считаются без подключения: браузер обращается к программе на вашем же компьютере. Интернет нужен только для установки новых пакетов и для кода, который сам запрашивает данные из сети.
Чем Jupyter отличается от редактора кода?
Редактор запускает программу целиком, Jupyter — по ячейкам, сохраняя переменные между запусками, и показывает результат рядом с кодом. Поэтому блокноты хороши для расчётов и отчётов, а редакторы — для программ, которые потом работают сами.
Чем Jupyter Notebook отличается от JupyterLab?
Это два интерфейса к одному и тому же. Notebook проще: открыт один блокнот в окне браузера. JupyterLab — рабочее место с деревом файлов, вкладками, терминалом и расширениями. Файлы IPYNB у них общие.
Как показать блокнот человеку без Jupyter?
Выгрузите его в HTML или PDF из меню экспорта — такой файл открывается в любом браузере и в любой программе для просмотра документов. Сам файл IPYNB без Jupyter или подходящего редактора не откроется.
