http://habrahabr.ru/post/218869/
Здравствуйте, уважаемые читатели.
3 апреля 2014 вышел долгожданный релиз
IPython под номером 2.0.
Для тех кто не знает,
IPython это интерактивная оболочка для языка программирования Python, которая предоставляет расширенную интроспекцию, дополнительный командный синтаксис, а также подсветку и автоматическое дополнение кода.
Далее я постараюсь описать наиболее значимые изменения по сравнению с предыдущей версией. Основные изменения в ней претерпела среда IPython Notebook, о нововведениях которой я напишу ниже.
Основные нововведения
И так в официальном
релизе перечислены следующие нововведения:
- Добавлена навигация по папкам в notebook
- Новый модальный интерфейс в notebook
- Возможность сохранять рабочий notebook в различных форматах
- Интерактивные виджеты при работе с Ipython Notebook
- Повышена безопасность
Новая навигация
Те кто, ранее работали с
IPython Notebook, вероятно знают как не удобно работать в главном окне программы, ведь все файлы *
.ipyb должны были лежать в определенной папке и пользователь не мог передвигаться по ее дереву.
С выходом новой версии данный недостаток был наконец-то устранен и теперь мы можем переходить по папкам разных уровней, что несомненно удобней чем было раньше.
Модальный интерфейс
В новой версии для каждой ячейки доступны 2 режима:
- Режим редактирования. Выделяется зеленой рамкой и попасть в него можно по нажатию кнопки
enter
.
- Командный режим. Выделяется серой рамкой. В данном режиме ячейка не доступна для редактирования. Чтобы изменить ее содержимое, надо перевести ячейку в режим редактирования.
Подробней новый интерфейс описан
здесь.
Экспорт рабочего notebook
Еще одно прекрасное нововведение, это добавление форматов экспорта в консоли.
Пользователи первой версии помнят, что там был лишь экспорт в файл python (
.py). А для того чтобы перегнать рабочую консоль в файл html* необходимо было идти в консоль и выполнять руками команду
nbconvert.
Теперь же, как можно увидеть из скриншота в этом нет необходимости и рабочую консоль IPython Notebook одним кликом можно преобразовать в html формат.
Интерактивные виджеты
Виджеты позволяют создавать высокоуровневые интерфейсы, для объектов Python, таких как функции. Есть стандартный набор виджетов, включенный в релиз, а также есть API для их создания. Подробней о виджетах, а также примеры их применения можно посмотреть в
документации Повышенная безопасность
В версии 2.0 консоль запускается в
безопасном режиме. В данном режиме:
- Доверие определяется параметром при запуске
- Недоверенный HTML проходит очистку
- Недоверенный JavaScript не выполняется
- В ячейках типа
markdown
JavaScript и HTML считаются не доверенными, если не определен параметр из п. 1.
Заключение
В завершении статьи хочу отметить, что все были описаны самые значительные изменения, кроме них есть еще куча всяких доработок и фишек. Полный список, а также документацию и примеры по ним можно посмотреть в
релизе.