Могу ли я использовать IPython во встроенной интерактивной консоли Python? - PullRequest
7 голосов
/ 01 февраля 2009

Я использую следующий фрагмент, чтобы попасть в среднюю программу оболочки 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()

Ответы [ 2 ]

13 голосов
/ 10 ноября 2013

Ответ от f3lix больше не действителен, мне кажется, я смог найти это:

В верхней части вашего скрипта Python:

from IPython import embed

Везде, где вы хотите раскрутить консоль:

embed()
2 голосов
/ 01 февраля 2009

Встраивание IPython может быть интересным для вас.

Минимум кода для запуска IPython в вашем приложении:

from IPython.Shell import IPShellEmbed
ipshell = IPShellEmbed()
ipshell() # this call anywhere in your program will start IPython 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...