gpt4 book ai didi

python - 如何使用日志恢复 iPython 0.13.2 session

转载 作者:行者123 更新时间:2023-11-28 17:46:09 24 4
gpt4 key购买 nike

我最近更频繁地使用 iPython (0.13.2),日志记录似乎是一个很棒的功能——如果我能让它正常工作的话。

目前,我可以通过 ipython --logfile ~/path/fake.log 启动并指定一个日志文件,甚至可以在 iPython session 中使用 %magic命令 %logstart ~/path/fake.log

但是,我似乎无法从日志文件恢复 session ,这似乎部分违背了目的。我已经搜索过 Google 和 SO,但是 SO 或文档中推荐的解决方案似乎都不是很正确。

我试过:

  • 来自 Bash
    • ipython -log ~/path/fake.log(source,结果:[TerminalIPythonApp] 无法识别的标志:'-log')
    • ipython -logplay ~/path/fake.log(source 和许多其他结果:[TerminalIPythonApp] 无法识别的标志:'-logplay')<
    • ipython --logfile=~/path/fake.log(source,结果:新日志开始,上一个 session 的变量未定义)
  • 来自 iPython
    • %logstart ~/path/fake.log append(source,结果:旧日志继续但未加载,上一个 session 的变量未定义)

两个部分工作(因为它们尝试导入日志文件)但似乎不是为此目的而设计的是:

  • 来自 bash:ipython -i ~/path/fake.log(source,结果:如果 session 导入和工作中没有错误。如果有任何错误,则不导入和变量仍然不可用。日志记录未恢复。)。
  • 来自 ipython:%run ~/path/fake.log(没有来源,只是猜测和尝试。结果:与上面相同。如果没有错误并且变量为 GTG,则运行文件。如果有错误,则不起作用。不恢复记录。)

在 iPython 0.13.2 中有什么方法可以恢复有效地“从你离开的地方开始”的 session 吗?感谢您提供的任何帮助。

最佳答案

所有这些保存/恢复 session 的工作方式是将交互保存为 py 文件,然后尝试在恢复期间运行 py 文件。如果发生 undefined variable 之类的错误,则会提示 python 错误并在那里停止恢复,但它会恢复存储在错误条件下的值。

为避免存储错误条件,请使用 How to save a Python interactive session? 的所选答案中的建议:

save  my_session_name   1-4 6  9

我的 session 将在 In[1] 到 In[4] 中获取命令并跳过 In[5]、保存 In[6]、跳过 In[7]、In[8] 并保存 In[9]。这样您就可以避免冒犯性的互动。

稍后恢复 session :

%run my_session_name.py

关于python - 如何使用日志恢复 iPython 0.13.2 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17813968/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com