保证python标准库的哪些部分可用?

Pau*_*ton 9 python portability

我很想知道python标准库的哪些部分绝对可以保证可用,哪些部分可能没有安装,取决于分发.

我已经看到了这个问题,但它并没有提供我正在寻找的答案.

我知道这些模块并不总是可用,而且数学模块总是可用的.其他模块怎么样?除了数学之外是否有任何模块可以保证可用?

编辑:sys模块也始终可用.

Jac*_*zny 5

如果您正在谈论标准的Python实现(CPython),那么http://docs.python.org/3/library/index.html页面会列出它提供的模块(您可以在顶部选择Python版本)页).

这些是Python实现中包含的标准模块,但其中一些是特定于操作系统的,或者可能依赖于某些其他平台组件.这通常在具有此类依赖性的模块的文档中注明.例如:http: //docs.python.org/3/library/posix.html - 顶部有"Platform:POSIX"注释.

其他依赖可能不是那么明确 - http://docs.python.org/3/library/sqlite3.html并没有说只有在Python构建期间sqlite3可用时才构建此模块,但它是可以的期望.

无论如何,Python标准库参考始终是最好的起点.如果模块文档中没有任何关于平台的说明,并且没有任何暗示它取决于任何外部库或平台特定机制,那么您可能认为它是安全的.但我们其他人曾说过 - 任何人都可以从他的Python版本中删除任何内容.

任何不是标准库的东西在任何Python安装中都必须被认为是可选的,但来自http://pypi.python.org/pypi的'pure python'模块可能更适用于标准库中的某些二进制模块的目标读者.