【发布时间】:2017-01-15 03:47:36
【问题描述】:
我想在新的控制台中执行一个 python 子进程。一旦开始,我希望用户能够回答这个新进程在标准输入上提出的问题。
我尝试了以下代码:
p = subprocess.Popen(cmd, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE, cwd=cwd, creationflags=subprocess.CREATE_NEW_CONSOLE)
(o, e) = p.communicate()
只要子进程要求在标准输入上输入,就会显示以下错误消息:
EOFError: 读取一行时出现EOF
这是实现这一目标的好方法吗?
【问题讨论】:
-
让它成为答案?可能对某些人有用:)
-
是的,它有效。我将评论移至答案。
标签: python subprocess stdin