python序列化操作

#!/usr/bin/python
# -*- coding: utf-8 -*-
import os
import pickle


class mypickler:
    def __init__(self, filename):
        self.filename = filename
        self.pyobject1 = [{(1,1L,0.1,'1','111')}]
        self.pyobject2 = [{(2,2L,0.2,'2','222')}] 
        
    def dopickle2file(self):
        with open(self.filename, 'wb') as myfile:
            pickle.dump(self.pyobject1, myfile)
            
    def dopicklefromfile(self):
        with open(self.filename, 'rb') as myfile:
            myobject = pickle.load(myfile)
        return myobject
            
    def dopickle2mem(self):
        with open(self.filename, 'wb') as myfile:
            self.mybit = pickle.dumps(self.pyobject2)

    def dopicklefrommem(self):
        with open(self.filename, 'rb') as myfile:
            myobject = pickle.loads(self.mybit)  
        return myobject          
            
if __name__ == '__main__':
    mp = mypickler('test.pickle')
    mp.dopickle2file()
    print mp.dopicklefromfile()
    mp.dopickle2mem()
    print mp.dopicklefrommem()
   

你可能感兴趣的:(python,File)