遍及整个互联网,以寻求解决方案。
总共两个脚本。
首先:发送用户输入-并锁定到脚本2打印出的内容。
第二:接收用户输入,将其打印。
示例:
脚本1发送“嗨”
脚本2:打印(“收到用户输入”)
脚本1:捕获脚本2输出(在本例中为“收到用户输入”)
有什么收获?
脚本2是类似于脚本的终端。假设它永远运行,只是等待用户输入(在本例中,等待脚本1进行输入) 弹出,发送,接收和关闭不是我想要的。
因此,基本上脚本2进程始终处于打开状态,而脚本1可能被强制打开,发送,捕获输出并关闭。
最小代码示例:
from subprocess import Popen, PIPE
def runScript(file, fileName):
proc = Popen([file], stdin=PIPE, stdout=PIPE, shell=False)
if fileName == "Script2.py"
proc.stdin.write("Something")
proc.stdin.flush()
proc.stdout.readline()
我已经搜索了整个Internet,到目前为止,我一直在使用Subprocess Popen,特定的Stdin和Stdout,并且没有进行通信,因为这使我的整个.Py都死机了。 由于堆栈溢出,有人建议不再支持名为Pexpect的模块。我迷路了。有没有我要搜索的模块,可以通过子流程来完成。