Что такое jupyter-ноутбук и зачем он нужен
medium

Что такое jupyter-ноутбук и зачем он нужен

Рассказываем о необычной среде разработки

Если вы хотите писать на Python или заниматься дата-сайенсом, вот классная штука для вас. Это уже, считай, стандарт для огромного числа питонистов, наслаждайтесь. 

Что такое jupyter-ноутбук

Jupyter-ноутбук — это среда разработки, где сразу можно видеть результат выполнения кода и его отдельных фрагментов. Отличие от традиционной среды разработки в том, что код можно разбить на куски и выполнять их в произвольном порядке. Представьте, что вы можете написать кусочек кода на салфетке и сказать салфетке: «Выполнись». 

В такой среде разработки можно, например, написать функцию и сразу проверить её работу, без запуска программы целиком. А ещё можно поменять порядок выполнения кода. Можно отдельно загрузить файл в память, отдельно проверить его содержимое, отдельно обработать содержимое. 

А ещё в jupyter-ноутбуках есть вывод результата сразу после фрагмента кода. Например, можно прямо в середине кода увидеть построенный график, получить предварительные цифры или любую другую визуализацию.

Какие языки поддерживаются

Чаще всего, когда говорят о jupyter-ноутбуках, имеют в виду работу с Python. Но на самом деле можно работать и с другими:

  • Ruby
  • Perl
  • R
  • bash-скрипты

Для этого используют специальные магические команды, которые так и называются — magic-команды. Они позволяют запускать код на других языках, а ещё существенно расширяют возможности обычного Python. Про эти команды мы поговорим в отдельной статье.

Ноутбук в облаке

Jupyter-ноутбуки запускаются на компьютере или в облаке. 

Проще всего начать работать с ноутбуком в облаке, например Google Colab. Это значит, что вам достаточно запустить браузер и открыть нужную страницу. После этого облачная система выделит для вас ресурсы и позволит выполнять любой код. 

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

Минус — программа может работать не так быстро, как на локальной машине. Ещё если вам нужны какие-то экзотические библиотеки, в облаке их может не оказаться.

Что такое jupyter-ноутбук и зачем он нужен
Ноутбук в гугл-облаке
Что такое jupyter-ноутбук и зачем он нужен
Ресурсы, которые нам выделило облако для работы с кодом

Ноутбук на компьютере

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

Так как основная среда в таком ноутбуке — это Python, то для работы у вас уже должен быть установлен Python, после сам ноутбук ставится так:

pip3 install jupyter

После установки ноутбук готов к запуску:

jupyter notebook

Эта команда откроет браузер, запустит локальный сервер для работы ноутбука и покажет нам готовую среду разработки:

Что такое jupyter-ноутбук и зачем он нужен

Альтернативный способ — установить «Анаконду», и там будет всё: и Python, и Jupyter, и куча других нужных и полезных инструментов.

Как работать с ноутбуком

Самый простой способ — писать в нём код и сразу видеть, что получается после запуска. Например, возьмём код из статьи про рулетку и казино, вставим его в ноутбук и запустим. Ноутбук сразу же после кода покажет все данные и нарисует график:

Что такое jupyter-ноутбук и зачем он нужен

То же самое в jupyter-ноутбуке в гугл-облаке:

Что такое jupyter-ноутбук и зачем он нужен

Где применяются jupyter-ноутбуки

Основная область применения ноутбуков — машинное обучение, нейросети, визуализация данных и статистика.  

Ещё такую среду часто используют для поэтапной разработки, когда нужно по шагам проверять работу разных фрагментов кода. Дело в том, что код в ноутбуках хранится в независимых ячейках и его можно запускать в любом порядке или поодиночке. Это позволяет быстро экспериментировать с алгоритмами и находить оптимальное решение.

Также jupyter-ноутбуки используются при обучении программированию на Python, чтобы писать код и сразу видеть результат его работы. 

Что дальше

В следующий раз освоим ноутбуки на практике — сделаем свой ноутбук с красивыми графиками и блоками кода.

Апскиллинг, как говорится
Апскиллинг — это, например, переход с уровня junior на уровень middle, а потом — senior. У «Яндекс Практикума» есть курсы ровно для этого: от алгоритмов и типов данных до модных фреймворков.
Начать бесплатно
Апскиллинг, как говорится Апскиллинг, как говорится Апскиллинг, как говорится Апскиллинг, как говорится
Получите ИТ-профессию
В «Яндекс Практикуме» можно стать разработчиком, тестировщиком, аналитиком и менеджером цифровых продуктов. Первая часть обучения всегда бесплатная, чтобы попробовать и найти то, что вам по душе. Дальше — программы трудоустройства.
Начать карьеру в ИТ
Получите ИТ-профессию Получите ИТ-профессию Получите ИТ-профессию Получите ИТ-профессию
Еще по теме
Flipper Zero: как устроен хакерский тамагочи
Flipper Zero: как устроен хакерский тамагочи

И сколько на нём можно заработать.

easy
Владимир Олохтонов о работе старшего разработчика в Авито
Владимир Олохтонов о работе старшего разработчика в Авито

Путь от монтажника локальных сетей до инженера машинного обучения.

easy
JavaScript для новичков: чем опасны нестрогие типы данных
JavaScript для новичков: чем опасны нестрогие типы данных

В JavaScript есть удобная штука, которая может сильно вам навредить.

medium
Не Worlde, а «Вордль»: русифицируем заморскую игру
Не Wordle, а «Вордль»: русифицируем заморскую игру

Управляем анимацией и добавляем экранную клавиатуру

medium
Зачем нужен таск-трекер и баг-трекер
Зачем нужен таск-трекер и баг-трекер

С ними проще, но не всегда

easy
У меня большая флешка, но на неё не влезают большие файлы. Почему?
У меня большая флешка, но на неё не влезают большие файлы. Почему?

Рассказываем о файловых системах

medium
UTF — универсальная кодировка для всего
UTF — универсальная кодировка для всего

Продолжение рассказа про Юникод

easy
Модели и биг-дата в эконометрике — сложно, но очень полезно
Модели и биг-дата в эконометрике — сложно, но очень полезно

Хардкорный разбор анализа данных в обратную сторону

hard
Sora: что умеет самая продвинутая нейросеть
Sora: что умеет самая продвинутая нейросеть

Гиперреалистичные видео по текстовому описанию

easy
medium