python

Обзор IPython Notebook 2.0

  • пятница, 11 апреля 2014 г. в 03:11:05
http://habrahabr.ru/post/218869/

Здравствуйте, уважаемые читатели.
3 апреля 2014 вышел долгожданный релиз IPython под номером 2.0.
Для тех кто не знает, IPython это интерактивная оболочка для языка программирования Python, которая предоставляет расширенную интроспекцию, дополнительный командный синтаксис, а также подсветку и автоматическое дополнение кода.
Далее я постараюсь описать наиболее значимые изменения по сравнению с предыдущей версией. Основные изменения в ней претерпела среда IPython Notebook, о нововведениях которой я напишу ниже.



Основные нововведения


И так в официальном релизе перечислены следующие нововведения:
  1. Добавлена навигация по папкам в notebook
  2. Новый модальный интерфейс в notebook
  3. Возможность сохранять рабочий notebook в различных форматах
  4. Интерактивные виджеты при работе с Ipython Notebook
  5. Повышена безопасность


Новая навигация


Те кто, ранее работали с IPython Notebook, вероятно знают как не удобно работать в главном окне программы, ведь все файлы *.ipyb должны были лежать в определенной папке и пользователь не мог передвигаться по ее дереву.
С выходом новой версии данный недостаток был наконец-то устранен и теперь мы можем переходить по папкам разных уровней, что несомненно удобней чем было раньше.



Модальный интерфейс


В новой версии для каждой ячейки доступны 2 режима:
  • Режим редактирования. Выделяется зеленой рамкой и попасть в него можно по нажатию кнопки enter.




  • Командный режим. Выделяется серой рамкой. В данном режиме ячейка не доступна для редактирования. Чтобы изменить ее содержимое, надо перевести ячейку в режим редактирования.




Подробней новый интерфейс описан здесь.

Экспорт рабочего notebook


Еще одно прекрасное нововведение, это добавление форматов экспорта в консоли.

Пользователи первой версии помнят, что там был лишь экспорт в файл python (.py). А для того чтобы перегнать рабочую консоль в файл html* необходимо было идти в консоль и выполнять руками команду nbconvert.
Теперь же, как можно увидеть из скриншота в этом нет необходимости и рабочую консоль IPython Notebook одним кликом можно преобразовать в html формат.

Интерактивные виджеты


Виджеты позволяют создавать высокоуровневые интерфейсы, для объектов Python, таких как функции. Есть стандартный набор виджетов, включенный в релиз, а также есть API для их создания. Подробней о виджетах, а также примеры их применения можно посмотреть в документации

Повышенная безопасность


В версии 2.0 консоль запускается в безопасном режиме. В данном режиме:
  • Доверие определяется параметром при запуске
  • Недоверенный HTML проходит очистку
  • Недоверенный JavaScript не выполняется
  • В ячейках типа markdown JavaScript и HTML считаются не доверенными, если не определен параметр из п. 1.


Заключение


В завершении статьи хочу отметить, что все были описаны самые значительные изменения, кроме них есть еще куча всяких доработок и фишек. Полный список, а также документацию и примеры по ним можно посмотреть в релизе.