Python 的 copyreg 文档 看起来这只是一种自定义 Python 中定义的特定类的 pickle 的方法。
但是,其源代码中的注释表示“这仅适用于为 C 中定义的扩展类型添加 pickle 支持,而不适用于用户定义类的实例。”
真的是这样吗?如果是这样,那么在实际的文档页面中没有提到它就很奇怪了。
如果是真的,它真的可以用于自定义用户定义的Python类的pickle吗?
源代码中的注释是在 2000 年用这个 commit 添加的。有趣的是,如果你注意到文件名,它是
copy_reg.py
而不是(copyreg.py
)。
copy_reg
是copyreg
的python2版本。 Python 2 版本copy_reg
不支持此处记录的类。
copy_reg.pickle(type, function[, constructor])
声明该函数 应该用作 type 类型对象的“归约”函数; type 不能是“经典”类对象。 (经典课程有 处理方式不同;