В чем разница между ipython и bpython?

88

Что ipythonесть , что bpythonне хватает , и наоборот? Чем они отличаются?

игорг
источник
59
Я не согласен с решением закрыть этот вопрос. Это отличный вопрос, на который есть реальные, основанные на фактах ответы, которые не основаны на мнениях, которые я хотел бы знать. Перечисление функций, уникальных для каждого, - это не мнение - это факт. Функция либо присутствует, либо нет. Стоит ли иметь эту функцию - это мнение, но вопрос не в этом.
ArtOfWarfare
обратите внимание на bypython-curtsies, он не очищает экран при запуске, и у него есть некоторые другие полезные функции: pip install git+https://github.com/thomasballinger/bpython.git@curtsies
Ник Свитинг,

Ответы:

70

Если вам просто нужен интерактивный интерпретатор, подойдет bpython. Просто используйте его, пока не пропустите какую-нибудь функцию, которая вам понравилась в IPython.

IPython предлагает множество функций поверх bpython:

  • Специальные возможности заправки резьбы. Мне нравится -gthreadэкспериментировать с PyGTK и -pylabmatplotlib.

  • прямой вызов команд оболочки. cdв IPython весьма полезен.

  • Полная поддержка библиотеки readline - я могу использовать привычные сочетания клавиш.

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

  • Запускать функции в фоновом режиме в отдельной задаче с %bg.

  • Целая среда параллельного программирования (на самом деле это не та функция, которую вы ожидаете от интерактивной оболочки Python, но IPython ее предлагает).

Этот список можно почти произвольно продолжить. И, конечно, в bpython будет много функций, которых не хватает в IPython, но вы их не просили.

Так что просто используйте тот, который вам подходит!

Свен Марнах
источник
интересно, я использую ipython на своем ноутбуке (Windows) для завершения вкладки, и он предлагает базовую командную строку? время почитать документацию ...
добавлено
1
Все, что сказал г-н Марнах, верно, и мне нечего добавить, кроме того: я использую их с одинаковой частотой - bpython особенно удобен для проверки пакетов и иерархий живых объектов, а также для вставки фрагментов; Ярлыки ipython docstring / help / source-view ( thing?и thing??) незаменимы.
fish2000 01
1
возможность использовать сочетания клавиш vi, вероятно, является причиной номер один, по которой я использую ipython.
wbg
этот ответ все еще актуален? Прошло много времени
baxx
@baxx Я не знаю, но ipython определенно более популярный вариант.
Свен Марнах,
37

IPython Notebook (начиная с версии 0.12) - потрясающая функция.

matlabdbuser
источник
2
скалы ipython. для случаев использования, когда bpython подходит лучше, чем ipython, хотя я предпочитаю это: github.com/jonathanslenders/ptpython . Более быстрый вывод, чем режим реверансов bpython и цветной вывод ansi.
Red Pill