我有一个可执行的example.exe.此可执行文件的行为如下:
1.Waits for input from user 2.Performs some operations,based on input 3.goto 1
如何使用子进程或类似模块与可执行文件进行交互?
解决方法
from subprocess import Popen,PIPE process = Popen([r'path/to/process','arg1','arg2','arg3'],stdin=PIPE,stdout=PIPE) to_program = "something to send to the program's stdin" while process.poll() == None: # While not terminated process.stdin.write(to_program) from_program = process.stdout.readline() # Modify as needed to read custom amount of output if from_program == "something": # send something new based on stdout to_program = "new thing to send to program" else: to_program = "other new thing to send to program" print("Process exited with code {}".format(process.poll()))
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。