Использование IPython из оболочки Python, например `code.interact()`

Можно ли использовать оболочку IPython из существующей оболочки Python, как оболочку внутри оболочки, аналогично встроенной code.interact()?

Ответы

Ответ 1

рекомендуемый способ внедрения IPython отлично работает:

~ $ python
Python 2.7 [...]
>>> from IPython.Shell import IPShellEmbed
>>> ipshell = IPShellEmbed()
>>> ipshell()

In [1]: 

Ответ 2

В IPython 0.11 API был переработан и оболочку еще проще вызвать:

import IPython

IPython.embed()

Ответ 3

Django manage.py shell вызывать оболочку IPython, когда это возможно, и она выполняется следующим образом:

import IPython

shell = IPython.Shell.IPShell()
shell.mainloop()