Я хотел бы предоставить интерактивную оболочку Python в браузере (для обучения, с некоторыми ограничениями, которые будут реализованы с использованием AST). Аналогично repl.it.
Идея: передать код python (введенный пользователем) с ajax вызовами сценария php, который затем использует proc_open (или что-то подобное) для вызова Python , (Я знаю, что можно было бы пропустить шаг PHP, но я не знаком с django, flask et c и не знаю, можно ли было бы установить эти python рамки на доступном сервере.) Это работает нормально, пока я прохожу всю программу python и собираю весь вывод.
Мой вопрос: есть ли возможность передавать код python строка за строкой и отображать результат после выполнения каждой строки, как в интерактивной оболочке python? Я полагаю, если это вообще возможно, это означает, что процесс python должен быть запущен после того, как вызов php отправляет ответ ajax, необходимо сохранить массив дескрипторов и ресурс процесса в сеансе переменная?
Любой код или подробное объяснение будет высоко ценится.