擅长:python、mysql、java
<p>好吧,我忽略了你的代码不能运行(无论你尝试执行的脚本,还是主脚本实际上都不起作用),然后看看你在做什么:</p>
<p>或者不想执行脚本。在</p>
<p>另外,您似乎正在使用一个打开的文件作为stdin。那不管用。在</p>
<pre><code>>>> thefile = open('/tmp/foo.txt', 'w')
>>> thefile.write("Hej!")
4
>>> thefile.read()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IOError: not readable
</code></pre>
<p>您需要关闭该文件,然后将其作为已读文件重新打开。虽然在这种情况下最好使用StringIO,但我认为。在</p>
<p>要与子进程对话,可以在管道上使用communicate(),而不是read()。在</p>
<p>我不知道你为什么在这里使用shell=True,这似乎没有必要,如果我是你,我会删除它,它只会使事情复杂化,除非你真的需要shell来做事情。
特别是当使用shell=True时,应该将命令拆分为一个列表。您的代码实际执行的是启动一个Python提示符。在</p>