输出到命令行并以python脚本写入文件

输出到命令行并以python脚本写入文件,python,Python,我有一个python脚本,当前输出一组文本到终端stdout。它看起来像: print "ABC" print "CD" print "QR" methodCallToOtherCodeThatAlsoPrints() # A bunch of other print lines... 现在,所有这些输出都被发送到stdout;但是,除了写入终端之外,我还希望将输出写入文件。最好的方法是什么?理想情况下,我不想将所有的print语句都更改为另一个方法调用,例如,我无法访问一些被调用以进行打印的

我有一个python脚本,当前输出一组文本到终端stdout。它看起来像:

print "ABC"
print "CD"
print "QR"
methodCallToOtherCodeThatAlsoPrints()
# A bunch of other print lines...
现在,所有这些输出都被发送到stdout;但是,除了写入终端之外,我还希望将输出写入文件。最好的方法是什么?理想情况下,我不想将所有的print语句都更改为另一个方法调用,例如,我无法访问一些被调用以进行打印的代码


我在想,有没有什么方法可以将打印输出重定向到标准输出和文件?

打开一个文件并在其中写入字符串:

 with open('my_file' , 'w') as f:
     f.write('your_string')
如果要将输出重定向到文件,请在调用.py文件后在终端中使用>:


这个问题看起来很相似:。Amith Koujalgi的回答似乎对您有用。我认为OP希望程序的行为就像调用python program.py | tee日志文件一样。创建一个不进行f.写入和打印的方法,并使用搜索和替换将当前方法更改为新方法。
$~ python my_file.py > save_file.txt