Python 如何将打印内容打印并重定向到文件中?

Python 如何将打印内容打印并重定向到文件中?,python,Python,我知道如何将stdout重定向到文件中: import sys sys.stdout = open('log.txt', 'w') print 'test' 这将创建一个log.txt,其中将写入测试。 但是,测试将不会在标准输出中打印 如何在终端和文件中打印和重定向测试,而不更改程序中的每个打印语句 PS:我知道重定向sys.stdout不好,但我仍然需要这样做unix命令读取标准输入并将其写入标准输出和一个或多个文件。In可能是您将脚本输出重定向到tee的一个选项。您可能应该运行通过管道传

我知道如何将stdout重定向到文件中:

import sys
sys.stdout = open('log.txt', 'w')
print 'test'
这将创建一个log.txt,其中将写入测试。 但是,测试将不会在标准输出中打印

如何在终端和文件中打印和重定向测试,而不更改程序中的每个打印语句


PS:我知道重定向sys.stdout不好,但我仍然需要这样做

unix命令读取标准输入并将其写入标准输出和一个或多个文件。In可能是您将脚本输出重定向到tee的一个选项。

您可能应该运行通过管道传输到tee的整个脚本:python hello.py | tee logfile.txt。可以将sys.stdout更改为类似文件的对象,该对象包含拆分功能,但不包括脚本运行的子进程。然后,您需要通过管道使用第二个流程,到那时就不需要重新发明轮子了

你可能想看看模块。Thx的链接复制,我会看看,并删除我的,如果必要的嗯。。。我不能删除我自己的帖子。。。