Python REPL для запущенного процесса - PullRequest
5 голосов
/ 04 июня 2009

В настоящее время я разрабатываю простое приложение на python, которое подключается к серверу. На данный момент он однопоточный (так как многопоточность в данный момент не требуется).

Однако я бы хотел - для отладки, обслуживания и тому подобного иметь возможность иметь REPL через стандартный ввод.

Как мне это сделать, если это возможно? Нужно ли что-то иметь в виду? Должен ли я сделать для этого отдельную тему?

Ответы [ 3 ]

3 голосов
/ 04 июня 2009

Вам нужно либо неблокировать, либо использовать поток.

Я бы лично использовал Twisted для параллелизма, который также предлагает REPL-протокол, который легко интегрировать.

1 голос
/ 04 июня 2009

Может быть этот вопрос может помочь. Вы можете немного изменить его, чтобы создать настроенный REPL.

0 голосов
/ 13 августа 2016

Там также rfoo . ОТ README:

rconsole - в комплект поставки rfoo входит удаленная консоль Python с автозаполнение, которое можно использовать для проверки и изменения пространства имен скрипт запуска.

Для активации в скрипте выполните:

from rfoo.utils import rconsole
rconsole.spawn_server()

Чтобы прикрепить из оболочки сделайте:

$ rconsole

ПРИМЕЧАНИЕ БЕЗОПАСНОСТИ:
Слушатель rconsole, запущенный с помощью spawn_server (), примет любой локальный подключение и, следовательно, может быть небезопасно для использования в виртуальном хостинге или подобные среды!

...