抑制 subprocess.Popen 的输出

2022-01-18 00:00:00 python subprocess

问题描述

如何停止 subprocess.Popen 的输出?如果打印量很大,打印有时会很慢.

How do you stop the output from subprocess.Popen from being output? Printing can sometimes be slow if there is a great deal of it.


解决方案

如果你想彻底扔掉:

import subprocess
import os
with open(os.devnull, 'w') as fp:
    cmd = subprocess.Popen(("[command]",), stdout=fp)

如果您使用的是 Python 2.5,则需要 from __future__ import with_statement,或者干脆不要使用 with.

If you are using Python 2.5, you will need from __future__ import with_statement, or just don't use with.

相关文章