如何将我的整个输出从iPython笔记本保存为.txt文件?

时间:2017-09-23 09:32:11

标签: python api web-crawler ipython

我编写了一个程序,用于在ipython笔记本中抓取来自twitter的数据。该程序提供了大量的数据流作为输出,我想将此输出保存在.txt文件中。我该怎么做?当我打开终端时,我可以通过以下方式轻松完成: python myfile.py> file.txt 我如何在ipython笔记本中做同样的事情?

1 个答案:

答案 0 :(得分:1)

我认为下面的代码片段会对你有帮助。 我只是将stdout更改为指向某个文件。无论之后的输出是什么,都会写入该文件。

后来我将stdout改回原来的形式。

import sys

# Holding the original output object. i.e. console out
orig_stdout = sys.stdout

# Opening the file to write file deletion logs.
f = open('file.txt', 'a+')

# Changing standard out to file out. 
sys.stdout = f

# Any print call in this function will get written into the file.
myFunc(params)
# This will write to the file. 
print("xyz") 

# Closing the file.
f.close()

# replacing the original output format to stdout.
sys.stdout = orig_stdout

# This will print onto the console.
print("xyz")