如何将标准输出转换为字符串(Python)

发布于 2024-09-14 00:02:47 字数 118 浏览 10 评论 0原文

我需要将通过子进程执行的进程的标准输出捕获到字符串中,然后将其放入我正在创建的 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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

我一向站在原地 2024-09-21 00:02:47

来自子流程文档

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

From the subprocess documentation:

from subprocess import *
output = Popen(["mycmd", "myarg"], stdout=PIPE).communicate()[0]
涙—继续流 2024-09-21 00:02:47

看一下子流程模块。

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.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文