У меня есть sql.exe
, который имеет интерфейс командной строки, принимает в качестве входных данных запрос sql и печатает результаты. Мне нужно написать программу на Python, которая будет генерировать команды sql, передавать их в качестве входных данных этой программе и читать выходные данные.
Для упражнений я написал игрушечную программу на python, adder.py
:
if __name__ == '__main__':
while True:
try:
line = input()
a, b = line.strip().split()
c = int(a) + int(b)
print(c)
except EOFError:
exit()
except:
continue
Я создал файл in.txt
:
10 5
7 3
1 a
2 1
Я выполняю из cmd: -$ python adder.py < in.txt > out.txt
, и out.txt:
15
10
3
У меня такой вопрос, как я могу передавать / буферизовать ввод и вывод, чтобы постоянно общаться с программой, и не создавать и читать файлы снова и снова?