您只能拨打communicate
一次。因此,您需要一次传递所有输入,即child.communicate("1\n1\n")
。或者,您可以写信给stdin:
child = subprocess.Popen("./test.py", stdin=subprocess.PIPE)
child.stdin.write("1\n")
child.stdin.write("1\n")
在一个脚本中使用Python的子进程和Popen运行另一个需要用户交互的Python脚本(通过raw_input)
您只能拨打communicate
一次。因此,您需要一次传递所有输入,即child.communicate("1\n1\n")
。或者,您可以写信给stdin:
child = subprocess.Popen("./test.py", stdin=subprocess.PIPE)
child.stdin.write("1\n")
child.stdin.write("1\n")