15.15. 平台-访问底层平台的标识数据

2.3 版的新Function。

源代码: Lib/platform.py


Note

特定平台按字母 Sequences 列出,Unix 部分中包含 Linux。

15.15.1. 跨平台

返回一个 Tuples(bits, linkage),Tuples(bits, linkage)包含有关位结构和用于可执行文件的链接格式的信息。这两个值都以字符串形式返回。

如参数预设所给定,将返回无法确定的值。如果给定的位是'',则sizeof(pointer)(或 Python 版本<1.5.2 上的sizeof(long))用作所支持指针大小的指示符。

该Function依赖于系统的file命令来执行实际工作。在大多数(如果不是全部)Unix 平台和某些非 Unix 平台上,仅在可执行文件指向 Python 解释器时,此选项才可用。当不满足上述需求时,将使用合理的默认值。

Note

在 Mac OS X(可能还有其他平台)上,可执行文件可能是包含多种体系结构的通用文件。

要获得当前解释器的“ 64 位”,查询sys.maxsize属性更为可靠:

is_64bits = sys.maxsize > 2**32

该输出旨在“易于阅读”,而不是机器可解析的。在不同的平台上看起来可能有所不同,这是有意的。

如果* aliased *为 true,则该函数将为各种平台使用别名,这些平台报告的系统名称与其通用名称不同,例如,SunOS 将报告为 Solaris。 system_alias()函数用于实现此目的。

将* terse *设置为 true 会使函数仅返回识别平台所需的绝对最小信息。

如果无法确定该值,则返回一个空字符串。请注意,许多平台不提供此信息,或仅返回与machine()相同的值。 NetBSD 执行此操作。

2.6 版的新Function。

2.6 版的新Function。

2.6 版的新Function。

请注意,与 Python sys.version不同,返回值将始终包含补丁程序级别(默认为 0)。

请注意,与 Python sys.version不同,返回值将始终包含补丁程序级别(默认为'0')。

请注意,与os.uname()函数不同,它还返回可能的处理器信息作为其他 Tuples 条目。

无法确定的条目设置为''

15.15.2. Java 平台

返回 Tuples(release, vendor, vminfo, osinfo),其中* vminfo 为 Tuples(vm_name, vm_release, vm_vendor) osinfo *为 Tuples(os_name, os_version, os_arch)。无法确定的值设置为作为参数给出的默认值(所有默认值均为'')。

15.15.3. Windows 平台

提示:* ptype *在单处理器 NT 计算机上为'Uniprocessor Free',在 multiprocessing 器计算机上为'Multiprocessor Free''Free'是指没有调试代码的 OS 版本。它还可以语句'Checked',这表示 os 版本使用调试代码,即用于检查参数,范围等的代码。

Note

此Function在安装 Mark Hammond 的win32all软件包时效果最佳,但在 Python 2.3 和更高版本上也是如此(在 Python 2.6 中添加了对此Function的支持)。它显然只能在 Win32 兼容平台上运行。

15.15.3.1. Win95/98 特定

15.15.4. Mac OS 平台

无法确定的条目设置为''。所有 Tuples 条目都是字符串。

15.15.5. Unix 平台

两者之间的唯一区别是dist()始终返回从supported_dists参数获取的分布的简称。

从 2.6 版开始不推荐使用。

可以提供supported_dists来定义要查找的 Linux 发行版集。它默认为由其发行文件名标识的当前受支持的 Linux 发行列表。

如果full_distribution_name为 true(默认值),则返回从 OS 读取的完整发行版。否则,将使用取自supported_dists的简称。

返回一个 Tuples(distname,version,id),默认为参数给定的 args。 id是版本号后面括号中的项目。通常是版本代号。

Note

从 Python 3.5 开始不推荐使用此Function,并在 python 3.8 中将其删除。查看替代方法,例如distro软件包。

2.6 版的新Function。

请注意,此函数非常了解不同的 libc 版本如何向可执行文件添加符号,这可能仅适用于使用 gcc 编译的可执行文件。

以* chunksize *个字节的块的形式读取和扫描文件。

首页