需要一个强大,高效的Python序列化器

时间:2016-04-06 23:53:48

标签: python json serialization pickle

我试图序列化一个混合了数据类型的Python对象 - 本机Python,numpy,内置Python的子类。 Pickle和cPickle足够强大,可以处理所有数据类型,但我达到了大小限制(> 300MB);我知道这是因为在加载pickle对象时我看不到整个对象被序列化了。寻找一个更有效的cPickle替代品我尝试了以下内容,但没有任何数据类型:json,simplejson,json的自定义子类将numpy类型转换为本机Python,marshal(不处理子类)内置类型,如defaultdict),MessagePack。你有什么建议吗?提前谢谢!

1 个答案:

答案 0 :(得分:0)

根据为什么进行序列化,我强烈建议您查看Protocol Buffer API

  

协议缓冲区是Google的语言中立,平台中立,可扩展的机制,用于序列化结构化数据 - 想想XML,但更小,更快,更简单。您可以定义数据的结构化时间,然后使用特殊生成的源代码轻松地在各种数据流中使用各种语言编写和读取结构化数据。

如果这听起来像是符合您的意图,我建议您花些时间阅读所有文档。

甚至有Python specific tutorial