我正在开发一个基于 python 2.4 的项目(这是一个嵌入式 python 项目,所以我无法选择使用的 python 版本)。在整个应用程序中,我们使用 array.array 来存储数据。
在 2.5 中,pickle
(和 cPickle
)添加了对 pickling array.array
对象的支持。当使用纯 python pickle 类时,我们在 2.4 中有一个可行的解决方法(我们将 Pickler/Unpickler 子类化来处理数组),但这不适用于 cPickle(由于性能问题,我们需要它)。
有什么建议吗?
最佳答案
可以使用标准库模块copy_reg注册函数来处理本身不支持 pickle 的类型的 pickle 实例; cPickle
将在需要时使用您注册的函数。我将完全应用这种“ Hook ”方法来满足您对 array.array
实例进行 pickle 的要求。
关于python - 使用 cPickle 在 2.4 中 pickle array.array,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2338001/