<bdo id='gu2GN'></bdo><ul id='gu2GN'></ul>
  1. <tfoot id='gu2GN'></tfoot>

  2. <i id='gu2GN'><tr id='gu2GN'><dt id='gu2GN'><q id='gu2GN'><span id='gu2GN'><b id='gu2GN'><form id='gu2GN'><ins id='gu2GN'></ins><ul id='gu2GN'></ul><sub id='gu2GN'></sub></form><legend id='gu2GN'></legend><bdo id='gu2GN'><pre id='gu2GN'><center id='gu2GN'></center></pre></bdo></b><th id='gu2GN'></th></span></q></dt></tr></i><div id='gu2GN'><tfoot id='gu2GN'></tfoot><dl id='gu2GN'><fieldset id='gu2GN'></fieldset></dl></div>

    <small id='gu2GN'></small><noframes id='gu2GN'>

    1. <legend id='gu2GN'><style id='gu2GN'><dir id='gu2GN'><q id='gu2GN'></q></dir></style></legend>
    2. 如何隐藏子进程的输出

      时间:2023-07-24
    3. <small id='WKzsg'></small><noframes id='WKzsg'>

    4. <legend id='WKzsg'><style id='WKzsg'><dir id='WKzsg'><q id='WKzsg'></q></dir></style></legend>
        <tbody id='WKzsg'></tbody>
      • <bdo id='WKzsg'></bdo><ul id='WKzsg'></ul>

            <tfoot id='WKzsg'></tfoot>
              1. <i id='WKzsg'><tr id='WKzsg'><dt id='WKzsg'><q id='WKzsg'><span id='WKzsg'><b id='WKzsg'><form id='WKzsg'><ins id='WKzsg'></ins><ul id='WKzsg'></ul><sub id='WKzsg'></sub></form><legend id='WKzsg'></legend><bdo id='WKzsg'><pre id='WKzsg'><center id='WKzsg'></center></pre></bdo></b><th id='WKzsg'></th></span></q></dt></tr></i><div id='WKzsg'><tfoot id='WKzsg'></tfoot><dl id='WKzsg'><fieldset id='WKzsg'></fieldset></dl></div>
                本文介绍了如何隐藏子进程的输出的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

                问题描述

                我在 Ubuntu 上使用 eSpeak,并且有一个 Python 2.7 脚本,可以打印并说出一条消息:

                I'm using eSpeak on Ubuntu and have a Python 2.7 script that prints and speaks a message:

                import subprocess
                text = 'Hello World.'
                print text
                subprocess.call(['espeak', text])
                

                eSpeak 会产生所需的声音,但会因为一些错误(ALSA lib...,没有套接字连接)而使外壳混乱,因此我无法轻松阅读之前打印的内容.退出代码为 0.

                eSpeak produces the desired sounds, but clutters the shell with some errors (ALSA lib..., no socket connect) so i cannot easily read what was printed earlier. Exit code is 0.

                不幸的是,没有记录的选项可以关闭它的冗长,所以我正在寻找一种方法来仅在视觉上使其静音并保持打开的外壳清洁以进行进一步的交互.

                Unfortunately there is no documented option to turn off its verbosity, so I'm looking for a way to only visually silence it and keep the open shell clean for further interaction.

                我该怎么做?

                推荐答案

                对于python >= 3.3,将输出重定向到DEVNULL:

                For python >= 3.3, Redirect the output to DEVNULL:

                import os
                import subprocess
                
                retcode = subprocess.call(['echo', 'foo'], 
                    stdout=subprocess.DEVNULL,
                    stderr=subprocess.STDOUT)
                

                对于python <3.3,包括2.7使用:

                For python <3.3, including 2.7 use:

                FNULL = open(os.devnull, 'w')
                retcode = subprocess.call(['echo', 'foo'], 
                    stdout=FNULL, 
                    stderr=subprocess.STDOUT)
                

                实际上和运行这个 shell 命令是一样的:

                It is effectively the same as running this shell command:

                retcode = os.system("echo 'foo' &> /dev/null")
                

                这篇关于如何隐藏子进程的输出的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

                上一篇:子进程中'shell = True'的实际含义 下一篇:为什么 tuple(set([1, “a", “b", “c", “z", “f

                相关文章

              2. <tfoot id='djOWM'></tfoot>
              3. <i id='djOWM'><tr id='djOWM'><dt id='djOWM'><q id='djOWM'><span id='djOWM'><b id='djOWM'><form id='djOWM'><ins id='djOWM'></ins><ul id='djOWM'></ul><sub id='djOWM'></sub></form><legend id='djOWM'></legend><bdo id='djOWM'><pre id='djOWM'><center id='djOWM'></center></pre></bdo></b><th id='djOWM'></th></span></q></dt></tr></i><div id='djOWM'><tfoot id='djOWM'></tfoot><dl id='djOWM'><fieldset id='djOWM'></fieldset></dl></div>
                <legend id='djOWM'><style id='djOWM'><dir id='djOWM'><q id='djOWM'></q></dir></style></legend>
                  <bdo id='djOWM'></bdo><ul id='djOWM'></ul>

                <small id='djOWM'></small><noframes id='djOWM'>