最好使用
communicate:
from subprocess import Popen, PIPE, STDOUTp = Popen(['myapp'], stdout=PIPE, stdin=PIPE, stderr=PIPE)stdout_data = p.communicate(input='data_to_write')[0]
“更好”,因为此警告:
请使用
communication()而不是
.stdin.write,.stdout.read或
.stderr.read来避免死锁,因为其他任何OS管道缓冲区中的任何一个都会填满并阻塞子进程。



