美文网首页
Python:用pickle保存python的"自带"数据类型

Python:用pickle保存python的"自带"数据类型

作者: 胜负55开 | 来源:发表于2019-11-27 18:22 被阅读0次

    说明:程序运行时,有很多时候"直接保存"一些列表、字典、元组等"Python自己的数据类型",要比将它们转写入到一个文件(如.txt)中方便的多!

    此时,针对这些Python自带的数据类型的保存,可以用Pickle这个内置的包来快速完成保存与读入。并且因为Pickle会直接把文件转为二进制形式,因此速度非常的快!

    包:import pickle
    保存到一个文件:pickle.dump(data, filename)
    读取一个文件:pickle.load(filename)

    直接看一个例子,马上会用:

    import pickle
    
    a = {'history':21231, 'loss':2.3241, 'ceshi':'gby'}
    
    # 保存/写入到一个二进制文件中:
    fw = open('dataFile.bin', 'wb')
    pickle.dump(a, fw, -1)
    fw.close()
    
    # 读取对应的文件:
    fr = open('dataFile.bin', 'rb')
    a1 = pickle.load(fr)
    
    # 效果:一模一样,且速度极快!
    a1
    Out[3]: {'history': 21231, 'loss': 2.3241, 'ceshi': 'gby'}
    

    只需注意一点:

    • pickle处理的都是"二进制"文件,所以不管是读、写文件,都要带上'b'!

    应用:

    • 在深度学习模型训练时:history = model.fit() 这里返回的history是一个字典。如果你的网络很大训练时间很长,不能实时查看history的变化。就可以把最后的history字典用pickle保存为一个二进制文件即可,保存速度很快。

    相关文章

      网友评论

          本文标题:Python:用pickle保存python的"自带"数据类型

          本文链接:https://www.haomeiwen.com/subject/tmhmwctx.html