Jupyter является развитием проекта IPython, который в интерактивном режиме посредством веб-интерфейса позволяет на языке Python выполнять научные вычисления, строить графики и т.д.Jupyter в отличие от IPython включает в себя не только интерпретатор языка Python, но и поддержку таких языков как Scala, bash, Haskell, Julia, R, Ruby. Выполнить тестовый запуск полноценной версии Jupyter можно на сайте: https://try.jupyter.org
17.1. Установка и запуск Jupyter
Для установки Jupyter под ОС Windows понадобится скачать и распаковать дистрибутив WinPython 3.5 (с сайта https://winpython.github.io).
После установки папка с файлами WinPython будет иметь следующий вид:
Второй вариант установки Jupyter под ОС Windows (и Linux) – Anaconda (с сайта: https://www.continuum.io/downloads).
Вернемся к WinPython. Запустим Jupyter Notebook. В процессе запуска создается локальный веб-сервер, прослушивающий сетевой порт c номером 8888. Автоматически на странице http://localhost:8888/tree откроется браузер.
Создадим новый блокнот для запуска программ на языке Python:
Откроется веб-интерфейс:
Переименуем блокнот (File Rename) в MyTest:
Увидим, что в каталоге \notebooks\ создался файл MyTest.ipynb:
По аналогии с IDLE в ячейке In[] блокнота Jupyter набираем код на языке Python и запускаем (комбинации Ctrl +Enter ,Alt +Enter – выполнить ячейку и добавить новую ячейку, Shift+Enter – выполнить ячейку и выделить следующую):
Результат выполнения кода отобразится в ячейке Out[1]:
Код можно модифицировать и запустить повторно (изменится индексация ячеек):
Отдельные ячейки блокнота Jupyter можно отмечать как текстовые (Markdown – специальный язык разметки) для комментирования кода:
Приведем пример разметки:
Функция f(a) принимает значение *числового* **объекта**. «`python def f(a): return a+7 «`
После заполнения текстовой ячейки ее можно выполнить и язык разметки преобразуется в презентабельный вид:
17.2. Работа в Jupyter
В отличие от стандартной среды разработки IDLE Jupyter позволяет:
1. Завершать команды (и пути к файлам) по нажатию клавиши Tab.
2. Выводить общую информацию об объекте (интроспекция объекта):
Выполним следующий набор команд:
In [ ]: lst = [3, 6, 7, 5, ‘h’, 5]
lst?
В результате получим:
Type: list
String form: [3, 6, 7, 5, ‘h’, 5]
Length: 6
Docstring:
list() -> new empty list
list(iterable) -> new list initialized from iterable’s items
Для функций ? показывает строку документации, ?? – по возможности показывает исходный код функции.
- C помощью «магической» команды %run (получить справочную информацию:
%run?) выполнять программы на языке Python. - Список «магических» команд %magic.
- %reset – удаляет все переменные, определенные в интерактивном пространстве
имен. - Команды для работы с операционной системой.
17.3. Интерактивные виджеты в Jupyter Notebook
Выполним в Jupyter (IPython) Notebook следующий код:
from IPython.html.widgets import interact
def factorial(x) :
f = np.math.factorial(x)
print(str(x) + ‘!= ‘ + str(f))
i = interact(factorial , x=(0,100))
Виджеты работают только при запущенном блокноте Jupyter.
Актуальная версия документации по виджетам: https://ipywidgets.readthedocs.io/en/latest/
Различные примеры виджетов:
http://nbviewer.jupyter.org/github/quantopian/ipython/blob/master/examples/Interactive%20Widgets/Index.ipynb
17.4. Установка дополнительных пакетов в WinPython из PyPI
Если требуется установить дополнительные пакеты, которые содержатся в PyPI53, то запустите WinPython Command Prompt, в появившемся окне наберите команду установки, например, pip install SPARQLWrapper: