控制台输出被print
发送到sys.stdout
. 如果需要,您可以用打开的文件或您自己的类似文件的对象替换该流。唯一的要求是您的自定义对象有一个write()
方法。
class MyOutputStream(object):
def write(self, data):
pass # Ignore output
import sys
sys.stdout = MyOutputStream()
print("Test") # Output is ignored
Run Code Online (Sandbox Code Playgroud)
如果要访问或恢复原始输出流,请使用sys.__stdout__
.
sys.stdout = sys.__stdout__ # Restore stdout
Run Code Online (Sandbox Code Playgroud)