这就是我最终要做的。更新
__dict__方法是,我们保留我添加到类中的所有新成员变量,并仅更新上次腌制对象时存在的成员变量。在类本身内部维护保存和加载代码时,这似乎是最简单的,因此调用代码仅执行object.save()。
def load(self): f = open(self.filename, 'rb') tmp_dict = cPickle.load(f) f.close() self.__dict__.update(tmp_dict)def save(self): f = open(self.filename, 'wb') cPickle.dump(self.__dict__, f, 2) f.close()