首页 > 其他 > 详细

自定义Pickle,借助pickle模块来完成简化的dump和load

时间:2019-06-05 09:06:04      阅读:109      评论:0      收藏:0      [点我收藏+]
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)

  

自定义Pickle,借助pickle模块来完成简化的dump和load

原文:https://www.cnblogs.com/biu-py/p/10977144.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!