使用cPickle.dump
/时,请尝试使用协议参数cPickle.dumps
。来自cPickle.Pickler.__doc__
:
Pickler(file,protocol = 0)-创建一个Pickler
这需要一个类似文件的对象来写入泡菜数据流。可选的proto参数告诉选择器使用给定的协议。支持的协议为0、1、2。默认协议为0,以便向后兼容。(协议0是唯一可以写入以文本模式打开的文件并成功读取的协议。当使用高于0的协议时,请确保在酸洗和解酸时都以二进制模式打开文件。)
协议1比协议0更有效;协议2比协议1更有效。
指定否定的协议版本会选择支持的最高协议版本。使用的协议越高,读取生成的泡菜所需的Python版本越新。
file参数必须具有一个write()方法,该方法接受单个字符串参数。因此,它可以是打开文件对象,StringIO对象或满足此接口的任何其他自定义对象。
在大多数情况下,转换JSON或YAML所需的时间可能比腌制更长的时间-pickle存储本地Python类型。