import pickle # 导入pickle模块
class My_pickle: # 定义pickle类
def __init__(self, path):
self.file = path
def dump(self, obj):
with open(self.file, 'ab') as f: # 以ab模式写入
pickle.dump(obj, f)
def load(self):
l = []
with open(self.file,'rb') as f: # rb模式读出
while True:
try:
l.append(pickle.load(f))
except EOFError:
break
return l
pic = My_pickle('pickle_file')
pic.dump(obj)
for i in pic.load():
print(i)
方式二
import pickle
class My_pickle:
def __init__(self,path):
self.file = path
def dump(self,obj):
with open(self.file,'ab') as f:
pickle.dump(obj,f)
def load(self):
with open(self.file,'rb') as f:
while 1:
try:
yield pickle load(f)
except EOFError:
break
pic = My_pickle('pickle_file')
pic.dump(obj)
for i in pic.load():
print(i)