Я использую следующий фрагмент, чтобы попасть в среднюю программу оболочки Python. Это прекрасно работает, но я получаю только стандартную консоль. Есть ли способ сделать то же самое, но с помощью оболочки IPython ?
import code class EmbeddedConsole(code.InteractiveConsole): def start(self): try: self.interact("Debug console starting...") except: print("Debug console closing...") def print_names(): print(adam) print(bob) adam = "I am Adam" bob = "I am Bob" print_names() console = EmbeddedConsole(locals()) console.start() print_names()
Ответ от f3lix больше не действителен, мне кажется, я смог найти это:
В верхней части вашего скрипта Python:
from IPython import embed
Везде, где вы хотите раскрутить консоль:
embed()
Встраивание IPython может быть интересным для вас.
Минимум кода для запуска IPython в вашем приложении:
from IPython.Shell import IPShellEmbed ipshell = IPShellEmbed() ipshell() # this call anywhere in your program will start IPython