我希望能够将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()
时,似乎没有显示。相反,它将输出放入上限变量两次。
答案 0 :(得分:12)
您在d
中输入错误cap.stout
。它应该是cap.stdout
我测试了以下内容并且工作正常。 cap.show()
还打印了“stuff”并重新运行单元格覆盖了文件。
%%capture cap --no-stderr
print 'stuff'
with open('output.txt', 'w') as f:
f.write(cap.stdout)
答案 1 :(得分:0)
%%capture cap --no-stderr
print("a")
with open('output.txt', 'w') as f:
f.write(str(cap))