如何将stdout转换为字符串(Python)

时间:2010-08-12 23:18:33

标签: python stdout

我需要将通过子进程执行的进程的stdout捕获到一个字符串中,然后将其放入我正在创建的wx应用程序的TextCtrl中。我该怎么做?

编辑:我还想知道如何确定流程何时终止

2 个答案:

答案 0 :(得分:8)

来自subprocess documentation

from subprocess import *
output = Popen(["mycmd", "myarg"], stdout=PIPE).communicate()[0]

答案 1 :(得分:2)

看一下子流程模块。

http://docs.python.org/library/subprocess.html

它允许您在shell中执行许多相同的输入和输出重定向。

如果您正在尝试重定向当前正在执行的脚本的标准输出,那只需要保持正确的文件句柄。在我的头顶,stdin是0,stdout是1,stderr是2,但是仔细检查。那时我可能错了。