Python pickle模块文档,有点误导?

时间:2013-01-15 23:14:57

标签: python pickle

python文档说: pickle可以透明地保存和恢复类实例,但是类定义必须是可导入的,并且与存储对象时存在于同一模块中。
我可以在存储课程的模块中放置一个pickler / unpickler吗? 或者我必须把课程放在模块中?如何? 我正在尝试从外部模块中的类中挑选/取消对象。

1 个答案:

答案 0 :(得分:1)

只要pickle模块在​​加载pickle时可以再次导入它,就可以挑选任何python类实例。

在您的python代码中使用load()dump()的位置并不重要,只有在以后再次检索您要发送的数据时,才会重要同一地点。

所以,如果你的模块foo.bar中有一个类Spam,那么只要你可以from foo.bar import Spam你可以腌制那个类的实例,因为{{1以后可以从同一模块再次加载该类。