【发布时间】:2017-12-12 17:37:52
【问题描述】:
我正在尝试将单元格的所有输出(标准输出和所有错误)保存到文件中。为了保存标准输出,我使用以下内容:
import sys
old_stdout = sys.stdout
sys.stdout = open('test.txt', 'w')
print("Hello World! ")
在这种情况下,输出不会显示并按预期保存在文件中。为了保存错误,我使用了:
#Doesn't work
sys.stderr = open('error.txt','w')
print(a) #Should raise NameError
当我运行这个单元格时,我在笔记本中得到错误,而不是在文件中如预期的那样:
---------------------------------------------------------------------------
NameError Traceback (most recent call last)
<ipython-input-5-de3efd936845> in <module>()
1 #Doesn't work
----> 2 sys.stderr = open('error.txt','w')
3 print("Test")
4 print(a)
NameError: name 'sys' is not defined
我希望将其保存在一个文件中,而不是在笔记本中显示。正确的代码是什么?
【问题讨论】:
-
看看这个 stackoverflow 答案:stackoverflow.com/questions/34145950/…
标签: python python-2.7 jupyter-notebook