python 怎样用pickle保存类的实例?
本人小白,特来请教大神们。。。pickle保存类的实例是不是将类实例化后,用pickle.dump()保存这个实例化的类到pkl文件中?
如:
class zxc():
x=1
b=zxc()
with open("zxc.pkl", "wb") as f:
pickle.dump(b, f)
如果是这样的话,给别人调用这个实例化的类,需要吧整个类也给别人吧?还是能只给文件?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
pickle.load
详细阅读这个 API 的英文文档以及 pickle 整个模块的文档
则问题可解
当执行pickle.load时,Python会试图导入包含class zxc的模块文件,如果不能导入,则会抛出异常。如果重命名该类和该模块或者将该模块移到另一个目录,则也会发生类似的错误。
所以,不只需要将相关的模块文件给他人,而且需要保证相对目录的一致性。