怎么保存python控制台的代码_如何将IPython控制台的输出保存到Spyder中的文件中?...

I have a bug in my program :(

The problem is that:

My .py code is long, and takes ages to run

I don't know where the bug is

The good news is that I have a lot of print() in my py file, so I can potentially know where the bug lives.

The bad news is that my bug makes my computer crash, so there is no way for me to look at the output of the ipython console and see what went wrong.

How can I have the output be written to disk while the program runs? So that I can still open the file after reboot to understand what happened before the crash?

This question is different from Redirect stdout to a file in Python?, because I need

continuous writing to file

something to use from within Spyder

Many thanks!

解决方案

Very interesting question! Fortunately IPython has the right magic for you. It's called %logstart (please follow the link for the full documentation).

To start using it and save the input and output of all your commands, just type in an IPython console

In[1]: %logstart -o

and that will record your session from that moment on into a file called ipython_log.py placed in your current directory.

%logstart is very flexible, so you can select a different file to save to, and also how you save your session (either pure Python or as IPython commands).

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值