1
我想腌出对象列表中的对象包含列表。当我打开腌制文件时,除了列表外,我可以看到我的对象中的任何数据。我在下面放置代码,这样更有意义。蟒蛇泡菜不保存整个对象
包含列表的对象。
class TestPickle:
testNumber = None
testList = []
def addNumber(self, value):
self.testNumber = value
def getNumber(self):
return self.testNumber
def addTestList(self, value):
self.testList.append(value)
def getTestList(self):
return self.testList
这个例子我创建上述对象的列表(我加入一个对象来保持简洁)
testPKL = TestPickle()
testList = []
testPKL.addNumber(12)
testPKL.addTestList(1)
testPKL.addTestList(2)
testList.append(testPKL)
with open(os.path.join(os.path.curdir, 'test.pkl'), 'wb') as f:
pickle.dump(testList, f)
这里是我的打开文件腌制,并试图访问的示例数据,我只能从上面检索testNumber,testList返回一个空列表。
pklResult = None
with open(os.path.join(os.path.curdir, 'test.pkl'), 'rb') as f:
pklResult = pickle.load(f)
for result in pklResult:
print result.getNumber() # returns 12
print result.testNumber # returns 12
print result.getTestList() # returns []
print result.testList # returns []
我想我在这里失去了一些明显的东西,但我没有任何运气发现它。感谢您的任何指导。
谢谢,就是这样。 – user1904898