如何将IPython控制台的输出保存到Spyder中的文件?

时间:2016-11-23 00:50:31

标签: python anaconda spyder

我的程序中有一个错误:(

问题在于:

  • 我的p1: Γίνεται πάντως p2: Γίνεται πάντως Δέν p3: ��� p4: ��� Δέν p5: Ä p6: �� Δέν p7: ��� 代码很长,需要很长时间才能运行
  • 我不知道bug在哪里

好消息是我的.py文件中有很多print(),因此我可能知道错误的位置。

坏消息是我的错误使我的计算机崩溃,因此我无法查看py控制台的输出和看看出了什么问题。

如何在程序运行时将输出写入磁盘?这样我仍然可以在重启后打开文件来了解崩溃前发生了什么?

这个问题与Redirect stdout to a file in Python?不同,因为我需要

  • 连续写入档案
  • 在Spyder中使用的东西

非常感谢!

1 个答案:

答案 0 :(得分:5)

非常有趣的问题!幸运的是,IPython为您提供了正确的魔力。它被称为%logstart(请点击完整文档的链接)。

要开始使用它并保存所有命令的输入和输出,只需输入IPython控制台

In[1]: %logstart -o

并且会将您的会话记录到当前目录中名为ipython_log.py的文件中。

%logstart非常灵活,因此您可以选择要保存的其他文件,以及如何保存会话(纯Python或IPython命令)。