ГЛАВА 17. СРЕДА РАЗРАБОТКИ JUPYTER

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

Для функций ? показывает строку документации, ?? – по возможности показывает исходный код функции.

  1. C помощью «магической» команды %run (получить справочную информацию:
    %run?) выполнять программы на языке Python.
  2. Список «магических» команд %magic.
  3. %reset – удаляет все переменные, определенные в интерактивном пространстве
    имен.
  4. Команды для работы с операционной системой.

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: