阻止sys.stdout写入文本文件

时间:2016-01-21 14:33:03

标签: python spyder sys

我正在使用python sys将我的stdout保存到文本文件中。

sys.stdout=open('OLSYield.txt','w')

但是我只想要一部分stdout转到文本。如何停止写入txt文件并重定向回终端或控制台?

所以看起来应该像

sys.stdout=open('OLSYield.txt','w')
print "helloWorld appears in text file"

sys.stdout=close('OLSYield.txt','w')
print "helloWorld appears in console"

我不确定用什么命令关闭stdout=open

2 个答案:

答案 0 :(得分:5)

要将输出更改回控制台,您需要保留对原始标准输出的引用:

data.length

答案 1 :(得分:0)

您可以停止写入您的文件并恢复到控制台,如下所示:

sys.stdout = open("file.txt", "w")
print "in file"

sys.stdout.close()
sys.stdout = open("/dev/stdout", "w")

print "in console"