Как поместить результат выполнения программы на python в переменную

сейчас я занят написанием псевдо-языка программирования на python. Не спрашивайте зачем, просто хочу сделать что-то свое. Суть его такова : я пишу команды в отдельном txt файле, дальше с помощью python читаю построчно содержимое файла и с помощью метода replace я заменяю команды моего языка на команды python. В конце у меня получается переменная с python кодом, и пришло время узнать результат выполнения, который я тоже хочу поместить в другую переменную, но я не знаю как это сделать. Если что функции eval и exec я пытался использовать, но exec не возвращает результат, а eval способна только на примитивные операции и дальше условных операторов с ней не выйдешь. Помогите пожалуйста.


Ответы (1 шт):

Автор решения: passant

Т.е. вы по сути делаете интерпретатор своего языка средствами языка Python с использованием Python в качестве интерпретирующей машины. Python - как известно - сам по себе язык интерпретируемый. Поэтому я бы - если бы вдруг встала такая задача - не собирал-бы всю программу в единую "строку", т.е. не "компилировал" бы, а "интерпретировал". Т.е. реализовывл бы цикл: "прочилали команду на псевдо-языке, заменили на команду(ы) Python, выполнили". А делать "компиляцию" на интрепретируемый язык - идея так себе.

→ Ссылка