python – 与另一个进程的标准输入/输出交互
发布时间:2020-12-20 13:48:04 所属栏目:Python 来源:网络整理
导读:我有一个可执行的example.exe.此可执行文件的行为如下: 1.Waits for input from user2.Performs some operations,based on input3.goto 1 如何使用子进程或类似模块与可执行文件进行交互? 我希望运行该过程,插入输入,接收输出,然后根据收到的输出插入其他
我有一个可执行的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())) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |