Поиск по сайту Поиск

Необычная среда разработки 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.

  1. После завершения установки, откройте консоль, нажав на клавиши Win+R
  2. В появившемся окне введите cmd после чего нажмите Enter (во всех версиях Windows).
  3. В среде cmd введите команду: jupyter notebook, и вы сможете запустить редактор.

Запуск в облаке

Если нужно написать код здесь и сейчас без лишних заморочек, можете запустить Jupyter в облаке. Для этого нужно использовать специальные сервисы, работающие во всех браузерах, например, Google Colab. Здесь нет никаких нюансов: переходите по ссылке, следуйте указаниям и создавайте код. 

Почитать по теме: 10 лучших IDE и редакторов кода для веб‑разработчиков (Visual Studio Code, PyCharm, WebStorm и др.).

Но сразу же отметим минусы этого способа: программа может работать не так быстро, как на локальной машине. Плюс в облаке может не оказаться нестандартных, но нужных библиотек. 

Jupyter Notebook открылся — что делать дальше

С помощью Jupyter Notebook можно загружать файлы, которые будут перемещены в папку, из которой запускается сам ноутбук, и создавать свои файлы (ipynb и не только). 

Также вы сможете редактировать и запускать код, по необходимости добавляя к нему текстовые комментарии-напоминалки или сообщения для совместной работы с коллегами. 

Для начала работы запустите программу одним из описанных выше способов. URL-адрес приложения будет выглядеть так: https://localhost:8888/tree.

Меню Jupyter Notebook viewer

Теперь нажмите на кнопку 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. А если у вас у вас остались вопросы — оставляйте их в комментариях, мы поможем разобраться.

История клиента: Anna Knit Hats

Недавно наш клиент и хороший друг решил поделиться своей историей знакомства и опытом работы с продуктами REG.RU. Знакомьтесь, Анна —...
Read More

Локальное ранжирование в Google: как проверять эффективность продвижения сайта в разных регионах

Чтобы убедиться, что сайт правильно продвигается, необходимо понимать, как именно он ранжируется в разных региональных сегментах интернета. Команда Links.Sape рассказывает...
Read More

Как совместить карьеру и семью: интервью с сотрудником REG.RU

Режим самоизоляции 2020 года разделил нашу жизнь на «до» и «после». И хоть прошло больше двух лет, многие IT-специалисты так...
Read More

Подборка выпусков подкаста «640 килобайт» для IT-специалистов

Удивительно, но в эпоху стримов, тиктоков и виртуальной реальности подкасты переживают вторую волну популярности. Всё потому, что у аудиоконтента есть...
Read More

Близнецы или двойняшки: что такое тайпо-домены

В прошлом месяце мы обещали подготовить статью про тайпо-домены. Сказано — сделано. Сегодня разберемся, что это такое и зачем регистрировать...
Read More

Необычная среда разработки Jupyter Notebook

Если вы хотите писать на Python или работать с Data Science, обратите внимание на интерактивную среду разработки с «живым» кодом...
Read More

Как определить фишинг и не попасться на крючок

Праздник к нам приходит, а вместе с ним и два месяца распродаж: 11.11 и «черные» дни недели. К сожалению, также...
Read More

Публичное, частное или гибридное: рассказываем, какое облако лучше подойдет вашему бизнесу

Причина популярности облачных технологий в бизнесе — не только безопасность данных и сокращение time-to-market (времени вывода на рынок). Облака позволяют...
Read More

Осенний рецепт для создания крутого сайта

Ноябрь — прекрасное время не только для тыквенных пирогов и облепихового чая, но и для запуска сайтов. Пока ваши клиенты...
Read More

Что такое Python-хостинг и какой тип услуги выбрать

В статье мы расскажем о том, что такое Python и как выбрать хостинг для проектов на этом языке. (далее…)
Read More