Необходимо запустить приложение .exe из python и передать параметры в цикле и захватывать вывод при каждом взаимодействии - PullRequest
0 голосов
/ 25 сентября 2019

У меня есть приложение .exe, которое принимает данные из командной строки, такие как

  1. Имя
  2. Варианты выбора для входа в модуль ABC
  3. Прием входных данных длядизайн ... и т. д.

Если пользователь вводит правильное значение, он переходит к следующему шагу.Если пользователь вводит неправильное значение (например, высота должна быть от 10 до 100, но вводит 101), тогда приложение попросит вас ввести правильную высоту.

Теперь я хочу захватить каждую строку вывода с помощью модуля Python subprocess.

import subprocess

path = 'H:\\React\\my-app\\output\\Test'

proc = subprocess.Popen(path, stdin=subprocess.PIPE, stdout=subprocess.PIPE, universal_newlines=True)

data = ['nara\n', '22\n']

for dat in data:
    proc.stdin.write(dat)
    proc.stdin.flush()
    t = proc.stdout.readline()
    print(t)

Нужно вывести как:

select below options:
1.Design
2.Analysis
3.Stop
4.Rerun

Все должно прийти в t, но я получаю по одной строке каждый раз.

...