python 类属性存放,保存到文件并加载python类的实例及其属性

我正在使用python进行数据分析,并希望找到一种很好的方法来将类的实例保存到文件中,以便以后可以在维护其属性值的情况下重新加载它。特别是,这个类的一个实例将加载其他类的实例对象,然后进行需要一段时间才能完成的处理器密集型比较。

例如:import pickle

class MyClass():

def __init__(self):

self.info = OtherClass(option=1)

def pickle(self):

f = file('test_file', 'wb')

pickle.dump(self, f, pickle.HIGHEST_PROTOCOL)

f.close()

def unpickle(self):

f = file('test_file', 'rb')

pickle.load(f)

f.close()

class OtherClass():

def __init__(self, option):

self.property = option * 2

mydata = MyClass(option=5)

mydata.pickle()

然后导入此模块并运行mydata.unpickle()以取回mydata(我还有一个选项,用于查找文件是否以前被pickle过,如果以前被pickle过,则暂停计算和调用OtherClass实例)。

现在,如果我这样做,我可以加载mydata,但它不再具有mydata.info对象。我的理解是这是pickle的一部分,但是有没有一种方法可以完全保存我的数据,以便我以后使用它?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值