python脚本保存整个环境
我在使用Python的交互式环境(REPL),想定期保存我的工作。有没有人能提供一个脚本,把我定义的所有变量都保存下来?我想要的东西大概是这样的:
for o in dir():
f=open(o)
pickle(o_as_object, f)
这看起来是其他人也做过的,所以我想在重新发明轮子之前先问问。
1 个回答
4
我觉得你想要的是Dill:
Dill除了可以保存Python对象外,还能让你用一个命令保存解释器会话的状态。这样,你就可以保存一个解释器会话,关闭它,把保存的文件传到另一台电脑上,然后在新电脑上打开一个新的解释器,恢复之前的会话,从而继续你原来会话的状态。
不过要注意,这个工具还在测试阶段,所以不要指望它能用来存储重要的数据。
当然,有些东西是无法恢复的,比如打开的文件句柄。但总体来说,你可以做到相当接近。