本人小白,特来请教大神们。。。pickle保存类的实例是不是将类实例化后,用pickle.dump()保存这个实例化的类到pkl文件中?如:class zxc():
x=1
b=zxc()with open("zxc.pkl", "wb") as f:
pickle.dump(b, f)
如果是这样的话,给别人调用这个实例化的类,需要吧整个类也给别人吧?还是能只给文件?
闭关修行中......
pickle.load 详细阅读这个 API 的英文文档
pickle.load
以及 pickle 整个模块的文档
则问题可解
当执行pickle.load时,Python会试图导入包含class zxc的模块文件,如果不能导入,则会抛出异常。如果重命名该类和该模块或者将该模块移到另一个目录,则也会发生类似的错误。
所以,不只需要将相关的模块文件给他人,而且需要保证相对目录的一致性。
pickle.load
详细阅读这个 API 的英文文档以及 pickle 整个模块的文档
则问题可解
当执行pickle.load时,Python会试图导入包含class zxc的模块文件,如果不能导入,则会抛出异常。如果重命名该类和该模块或者将该模块移到另一个目录,则也会发生类似的错误。
所以,不只需要将相关的模块文件给他人,而且需要保证相对目录的一致性。