繁体   English   中英

我如何知道特定版本的 Python 支持哪些泡菜版本?

[英]How do I know which versions of pickle a particular version of Python supports?

我有一个需要 Python 2.6 的脚本。 我将在下一个版本中添加一个大型腌制数据库,我想使用最快的腌制版本。 如何判断 Python 2.6 及更高版本的每个版本中都有哪些酸洗版本?

像这样:

>>> import pickle
>>> pickle.compatible_formats
['1.0', '1.1', '1.2', '1.3', '2.0']

编辑

我认为依靠最新的文档是安全的。 例如Python 3.2.1 的泡菜文档指出:

目前有 4 种不同的协议可用于酸洗。

  • 协议版本 0 是原始的人类可读协议,向后兼容早期版本的 Python。

  • 协议版本 1 是旧的二进制格式,它也与早期版本的 Python 兼容。

  • Python 2.3 中引入了协议版本 2。 它提供了更有效的新型类的酸洗。

  • Python 3.0 中添加了协议版本 3。 它对字节有明确的支持,并且不能被 Python 2.x 泡菜模块解封。 这个
    是当前推荐的协议,尽可能使用它。

我认为这很容易确认!

为了明确回答您的问题,这意味着 Python 2.6-2.7 支持 Pickle 版本 <= 2.0,并且 Python 3.0-3.2 支持 Pickle 版本 <= 3.0。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM