如何将标准输出转换为字符串(Python)
我需要将通过子进程执行的进程的标准输出捕获到字符串中,然后将其放入我正在创建的 wx 应用程序的 TextCtrl 中。我该怎么做?
编辑:我还想知道如何确定进程何时终止
I need to capture the stdout of a process I execute via subprocess into a string to then put it inside a TextCtrl of a wx application I'm creating. How do I do that?
EDIT: I'd also like to know how to determine when a process terminates
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
来自子流程文档:
From the subprocess documentation:
看一下子流程模块。
http://docs.python.org/library/subprocess.html
它允许您执行许多与 shell 中相同的输入和输出重定向操作。
如果您尝试重定向当前正在执行的脚本的标准输出,那么只需获取正确的文件句柄即可。在我的脑海中,stdin 是 0,stdout 是 1,stderr 是 2,但请仔细检查。在这一点上我可能是错的。
Take a look at the subprocess module.
http://docs.python.org/library/subprocess.html
It allows you to do a lot of the same input and output redirection that you can do in the shell.
If you're trying to redirect the stdout of the currently executing script, that's just a matter of getting a hold of the correct file handle. Off the top of my head, stdin is 0, stdout is 1, and stderr is 2, but double check. I could be wrong on that point.