【发布时间】:2015-03-15 15:48:27
【问题描述】:
我希望能够将 iPython 笔记本 cell 的 TEXT 输出保存到磁盘上的文件中。
我有 2 个额外的要求/要求:
- 能够重新运行单元格并用最新的内容覆盖我的输出。
- 还在笔记本中显示输出。
我已经想出了如何使用%%capture 魔法将 iPython 笔记本的单元格基本保存到文件中,但它似乎不够灵活:每次我重新运行单元格时它都会不断追加,我不能让它显示在同一个单元格中。
这是我目前所拥有的:
%%capture cap --no-stderr
print 'stuff'
with open('output.txt', 'w') as f:
f.write(cap.stdout)
# clear the cap by deleting the variable here?
# del cap
当我尝试在写入后输入cap.show() 时,它似乎没有显示。相反,它将输出两次放入 cap 变量中。
【问题讨论】:
-
您想要 all 文本输出还是只需要 print 语句创建的文本输出?由于 IPython 显示机制,所有对象都有文本表示,因此笔记本中的文本比最初可见的要多。
-
如果您只是在打印语句之后,请查看this question的答案
-
这可能对保存特定单元格有用:datascience.stackexchange.com/questions/13669/…
标签: jupyter-notebook ipython ipython-magic