До перехода на IPython v0.11 (с использованием Python 2.6.1) можно было встроить интерактивную оболочку IPython, используя, например, this , например,
from IPython.Shell import IPShellEmbed
ipshell = IPShellEmbed()
ipshell() # this call anywhere in your program will start IPython
"Встроенная оболочка была преобразована в действительно автономный подкласс InteractiveShell с именем InteractiveShellEmbed . Вся логика встраивания была извлечена из базового класса и помещена во встроенный подкласс" (см. здесь и здесь ).
Насколько я понимаю, теперь вы можете просто запустить консоль с помощью
import IPython
IPython.embed()
Однако, это поднимает
TraitError: Черта 'exit_msg' экземпляра InteractiveShellEmbed должна быть строкой, но было указано значение u ''.
Если мы передадим строку для exit_msg
на
IPython.embed(exit_msg='Whatever')
Тогда возникает другая ошибка
AttributeError: у объекта «InteractiveShellEmbed» нет атрибута «set_completer»
Кто-нибудь еще сталкивался с этой проблемой? В противном случае это может быть ошибкой, поскольку в конце концов это версия разработчика.