【问题标题】:python %logstart fails to store input resultspython %logstart 无法存储输入结果
【发布时间】:2019-11-11 01:02:43
【问题描述】:

我关注了this post,这让我找到了this post,以便保存 ipython 的输入结果(不要将输入结果与输出混淆;它们在 ipython 中被认为是不同的东西)。该帖子接受的答案只是“在 ipython 中使用%logstart -o”,我全心全意地遵循答案,希望它能够工作,但它没有。

由于一张图片价值超过一千字,我在此展示%logstart -o无法解决我的问题的图片。图片清楚地显示我在 ipython 中使用了%logstart -o,并播放了一个打印字符串和 numpy 数组的文件。字符串和数组没有出现在 ipython_log.py 中,它总结了两件事。

1) %logstart -o 被窃听(我不相信)

2) %logstart -o 有效,但没有实现我的目标

我的问题如下:

如果%logstart -o 不能实现我的目标,那还能做什么?

【问题讨论】:

    标签: python python-3.x logging ipython spyder


    【解决方案1】:

    您引用的第二篇文章的文档非常清楚,但让我为您引用重要的部分:

    在这种模式下[即%logstart模式],所有产生Out[NN]提示的命令都会记录到日志文件中

    鉴于您使用runfile 运行代码,不会生成Out[NN] 提示,您必须使用print 语句来查看结果(不能使用%logstart 记录)。

    所以我对您的唯一建议是不要使用runfile,而是使用单元格,这些单元格是由# %% 形式的cmets 分隔的代码段,您可以使用Shift+Enter 运行。这相当于直接在控制台中运行您的代码,这应该会生成必要的Out[NN] 提示。

    除此之外,我认为不可能得到你想要的,对不起。

    【讨论】:

    • 感谢您的回复。我想我现在必须坚持使用 logging 模块来进行有效的日志记录一段时间,因为 ipython 并不完全支持我打算做的事情。
    • 好的,我明白了。抱歉,我的建议对您没有帮助。
    猜你喜欢
    • 1970-01-01
    • 2010-09-11
    • 2020-01-06
    • 2013-02-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多