Необычная среда разработки Jupyter Notebook
Если вы хотите писать на Python или работать с Data Science, обратите внимание на интерактивную среду разработки с «живым» кодом — Jupyter Notebook — главного героя сегодняшней статьи.
Что такое Jupyter Notebook
Jupyter Notebook (или Jupyter-ноутбук) — бесплатное веб-приложение, в котором разработчики могут работать с кодом: писать и проверять функции, загружать файлы в память, обрабатывать содержимое и многое другое.
Главное отличие от других сред разработки в том, что код можно разбивать на куски (отдельные фрагменты), чтобы выполнять их в произвольном порядке. А еще в Jupyter-блокноте есть вывод результата сразу после фрагмента кода, благодаря чему можно увидеть график, диаграмму или получить предварительные цифры прямо в середине кода.
Поэтому Jupyter Notebook часто используют новички при изучении программирования на Python: можно писать код и сразу видеть результат своей работы. Однако основная область применения Jupyter — машинное обучение, нейросети, визуализация данных и статистика (это и есть Data Science).
Какие языки поддерживаются
Чаще всего Jupyter Notebook используют для работы с Python. Но поддерживаются и другие языки программирования, например:
- Ruby,
- Perl,
- R,
- Julia,
- Matlab.
Чтобы программировать на них, нужно использовать специальные «волшебные» команды — magic-command. Они позволяют запускать код на других языках и существенно расширяют возможности обычного Python. Для каждого из перечисленных выше языков есть отдельная инструкция по установке, поэтому это тема для отдельного поста. Дайте знать в комментариях, если хотите прочитать статью на эту тему.
Jupyter-ноутбук можно запустить двумя способами: на компьютере или в облаке.
Запуск на компьютере
Если вы сами хотите контролировать всё, что происходит с кодом и со средой разработки, тогда нужно установить Jupyter к себе на компьютер.
Как запустить Jupyter Notebook из консоли
Для этого понадобится один убунту-сервер (server Ubuntu 18.04). На этом сервере должны быть настроены пользователь без привилегий root с привилегиями sudo и брандмауэр. И, раз основная среда в таком ноутбуке — это Python, то для работы у вас уже должен быть скачан и установлен Python с загруженной библиотекой Jupyter.
Когда всё будет готово, введите в командную строку (terminal) эту команду:
pip3 install jupyter
Это активирует установочную утилиту — pip, основные задачи которой распаковывать, устанавливать и обновлять пакеты программ.
После перед вами появится сообщение Succellfull installed, что означает, что установка успешно завершена.
Теперь Jupyter Notebook готов к запуску. Чтобы открыть его, используйте команду:
jupyter notebook
Она запустит локальный сервер для работы ноутбука и покажет нам готовую среду разработки.
Как запустить Jupyter Notebook с помощью Anaconda
Еще один способ запустить Jupyter, который, к слову, подходит и для Windows — загрузить Anaconda. Это архивированный набор файлов с полезным софтом: Python, Jupyter, NumPy, pandas, Matplotlib.
Чтобы установить как Python, так и Jupyter Notebook, скачайте установщик Anaconda для своей платформы и запустите его. В мастере установки укажите параметр для добавления Anaconda в переменную PATH.
- После завершения установки, откройте консоль, нажав на клавиши Win+R.
- В появившемся окне введите cmd после чего нажмите Enter (во всех версиях Windows).
- В среде cmd введите команду: jupyter notebook, и вы сможете запустить редактор.
Запуск в облаке
Если нужно написать код здесь и сейчас без лишних заморочек, можете запустить Jupyter в облаке. Для этого нужно использовать специальные сервисы, работающие во всех браузерах, например, Google Colab. Здесь нет никаких нюансов: переходите по ссылке, следуйте указаниям и создавайте код.
Почитать по теме: 10 лучших IDE и редакторов кода для веб‑разработчиков (Visual Studio Code, PyCharm, WebStorm и др.).
Но сразу же отметим минусы этого способа: программа может работать не так быстро, как на локальной машине. Плюс в облаке может не оказаться нестандартных, но нужных библиотек.
Jupyter Notebook открылся — что делать дальше
С помощью Jupyter Notebook можно загружать файлы, которые будут перемещены в папку, из которой запускается сам ноутбук, и создавать свои файлы (ipynb и не только).
Также вы сможете редактировать и запускать код, по необходимости добавляя к нему текстовые комментарии-напоминалки или сообщения для совместной работы с коллегами.
Для начала работы запустите программу одним из описанных выше способов. URL-адрес приложения будет выглядеть так: https://localhost:8888/tree.
Теперь нажмите на кнопку Upload в правом верхнем углу, если хотите загрузить свой файл (например, в формате config). Если вы хотите написать код с нуля, создайте свой ipynb-файл, нажав на кнопку New.
Дальше всё зависит от цели. Можете писать код, можете писать текст, можете делать и то и другое. Кликайте на пустую ячейку (она пока одна) и … начинайте! Напишите выражение вывода, используя синтаксис Python 3 и нажмите «Run». Вот так за пару шагов вы создали свой фрагмент кода.
Чтобы создать новую ячейку, нажмите «+» на панели инструментов. Вырезайте, копируйте, удаляйте и редактируйте ячейки и markdown (разметку текста) с помощью вкладки Edit.
Как использовать горячие клавиши Jupyter Notebook
Если вы новичок, не пренебрегайте использованием горячих клавиш. В долгосрочной перспективе время на изучение окупится многократно, а пока можете использовать нашу статью в качестве подсказки.
Esc: Переключение между режимом выполнения и редактирования
A: Добавление пустой ячейки сверху
B: Добавление пустой ячейки снизу
DD: Удаления ячейки
C: Копирование ячеек
X: Вырезание ячеек
V: Вставка ячеек
Комбинируя их, вы сможете быстро совершать множество базовых действий.
Например, для перезапуска блокнота нажмите ESC + 00.
Чтобы прокрутить блокнот вниз, нажмите Space, или а Shift + Space — для прокрутки вверх.
Для запуска кода используйте:
- Shift+Enter — выполнение текущей ячейки и перевод фокуса на следующую.
- Ctrl+Enter — выполнение текущей ячейки и сохранение фокуса на текущей ячейке.
- Alt+Enter — выполнение текущей ячейки и перевод фокуса на новую ячейку созданную ниже.
Для быстрого удаления ячейки нажмите ESC + Z.
Если вы начали писать код в одной ячейке, но понимаете, что их всё же нужно разделить, не обязательно разделять текст вручную. Просто поставьте курсор в нужное место и используйте Control + Shift + или -.
Чтобы легко и быстро перемещаться к ячейке, которая выполняется в данный момент, нажмите Alt + I.
А если что-то пошло не по плану, можно пропустить выполнение ячейки, зажав %%script false.
Если не хочется морочиться с маркдауном и вручную проставлять #, используйте шорткаты: 1, 2, 3, 4, 5, 6.
Похожие команды есть и для конвертации типов ячеек
- Y — code,
- M — markdown,
- R — raw.
Чтобы открыть полный список горячих клавиш, нажмите Help → Keyboard Shortcuts в верхнем меню.
⌘⌘⌘
Желаем вам продуктивной работы с Jupyter Notebook. А если у вас у вас остались вопросы — оставляйте их в комментариях, мы поможем разобраться.