python - 如何腌制或存储 Jupyter (IPython) 笔记本 session 以供以后使用

标签 python ipython ipython-notebook jupyter jupyter-notebook

假设我正在 Jupyter/Ipython 笔记本中进行更大的数据分析,并完成了大量耗时的计算。然后,由于某种原因,我不得不关闭 jupyter 本地服务器 I,但我想稍后再返回进行分析,而不必再次进行所有耗时的计算。


喜欢喜欢做的是 pickle 或存储整个 Jupyter session (所有 pandas 数据帧、np.arrays、变量……),这样我就可以安全地关闭服务器,因为我知道我可以以与以前完全相同的状态返回到我的 session 。

这在技术上是否可行?是否有我忽略的内置功能?


编辑: 基于 this回答有一个%store magic这应该是“轻量级泡菜”。但是,您必须像这样手动存储变量:

#在 ipython/nb session 中
foo = "一个虚拟字符串"
%store foo
关闭视野,重启内核
%store -r foo # r 刷新
print(foo) # "一个虚拟字符串"

这与我想要的非常接近,但是必须手动完成并且无法区分不同的 session ,这使得它不太有用。

最佳答案

我认为 Dill 很好地回答了你的问题。

pip install dill

保存笔记本 session :

import dill
dill.dump_session('notebook_env.db')

恢复笔记本 session :

import dill
dill.load_session('notebook_env.db')

Source

关于python - 如何腌制或存储 Jupyter (IPython) 笔记本 session 以供以后使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34342155/

相关文章:

python - 如何通过应用引擎上传sitemap.xml?

python - Python中的条件计数

python - 使用 Spyder 时 ipdb 提示符不会自动完成

python - 确定从 ipython 笔记本读取和写入的所有文件

python - 在 Python 中确定重定向的 URL

python: split() 也拆分引用值

python - 不同环境下搜索结果不同

python - VBA shell脚本在执行前设置环境变量

python - 使用 IPython Notebook 获取输出

python - IPython Notebook 语言环境错误