Python中利用pickle保存变量

       在工作中出于某些原因,我们可能需要将变量保存下来,这样下次就可以直接去赋值而不用重新执行某些重复耗时的操作了,这里我们用到了Python的pickle包来做变量的存储和变量加载,大家注意这个包是python自带的,不需要另外再去安装。

pickle用法如下: pickle.dump(obj, file, protocol=None,*,fix_imports=True)

                            pickle.load(file, *,fix_imports=True, encoding=”ASCII”. errors=”strict”)

需要注意这里的file必须要是以二进制的形式进行操作(写入或读取)

import pickle
c=[1,2,3,4,5,6,7]
a=c*4
f=open('D:\\pycm\\kaggle\\data\\test.txt','wb')
pickle.dump(a,f)
f.close()
print(a)

结果输出如下:

加载存储的变量方法如下:

import pickle
f=open('D:\\pycm\\kaggle\\data\\test.txt','rb')
d=pickle.load(f)
f.close()
print(d)

结果输出如下:

这样就完成变量的保存和加载操作啦,完整写法如下:

import pickle
def save_variable(v,filename):
    f=open(filename,'wb')
    pickle.dump(v,f)
    f.close()
    return filename

def load_variavle(filename):
    f=open(filename,'rb')
    r=pickle.load(f)
    f.close()
    return r

if __name__=='__main__':
    c = [1, 2, 3, 4, 5, 6, 7]
    filename=save_variable(c,'D:\\test.txt')
    d=load_variavle(filename)
    print(d==c)

结果输出如下:

猜你喜欢

转载自blog.csdn.net/qq_27575895/article/details/81100232