Импорт переменной в другой файл во время выполнения программы?
Здравствуйте, появился вопрос.
Есть файл main.py. Там выполняется определенный код и в этом файле мне на выбор дается три элемента.
Я выбираю один из них, заношу этот элемент в отдельную переменную. И мне нужно во время выполнения программы(main.py) импортировать этот элемент в другой файл. Как можно это сделать?
Возможно, Вы хотите передать значение переменной другой программе? Тогда та программа должна либо принимать параметры при запуске, и вы запускаете ту программу с параметром, равным значению переменной, из main.py, или та программа должна, будучи запущенной, мониторить какой-либо файл, и вы из main.py пишете значение в файл, а та программа его оттуда подхватывает.
Illia Shafranskyi, если бы вы сообщили больше конкретики, возможно были бы и другие варианты. Например, тот "другой файл" - это что? Это исполняемый файл? Программа Python? Какая-то другая программа? В какой системе?
Алан Гибизов, Есть файл main.py. Есть файл handler.py. Исполняемый файл - main.py.
В этом мэйне на выбор пользователю дается три элемента, типа строка. Пользователь выбирает один из них и нажимает Enter. Программа тут же, не прерываясь, должна отправить эту выбранную строку в файл handler.py, где над ней будут произведены некие манипуляции. Очень важно не прерывать исполнение main.py и отправить выбранную строку в handler.py
Система: Ubuntu 18.04
Посоветовали использовать модуль subprocess.
Illia Shafranskyi, это конечно другое дело. Вы лучше исправьте вопрос, опишите так, как мне написали. Полагаю, Вам дадут совет лучше, чем дал я.
Насчёт subprocess - он приостанавливает выполнение основной программы, ждёт, когда выполнится и завершится вызванная команда, и продолжает выполнение исходного процесса. Вам может не подойти.
Возможно, вам надо смотреть в сторону многопоточного варианта. Один поток с другим соединяется сигналами и в них передаёт данные. Но я сам в этом совсем не силён.
Алан Гибизов, Не знаю, может subrocess подойдет. Из main.py я передаю переменную в handler.py. Там эта переменная обрабатывается и назад в main.py возвращается другой результат. Я думаю, что во время выбора переменной, программа в main.py должна задержатся, пока не вернется назад результат из handler.py. Буду экспериментировать. Спасибо за Ваш ответ!