platform (Operating System) – Python 中文开发手册
platform (Operating System) - Python 中文开发手册
2.3版本的新功能。
源代码: Lib / platform.py
注意
具体的平台按照字母顺序列出,Unix 部分包含 Linux。
1.跨平台
platform.architecture(executable=sys.executable, bits='', linkage='')
查询给定的可执行文件(默认为 Python 解释器二进制文件)以获取各种体系结构信息。
返回(bits, linkage)包含有关位体系结构和用于可执行文件的链接格式信息的元组。这两个值都以字符串形式返回。
无法确定的值将返回给定参数预设。如果给出位'',则sizeof(pointer)(或者sizeof(long)在 Python 版本<1.5.2)被用作指示器以支持指针大小。
该功能依靠系统的file命令来完成实际工作。如果不是所有的 Unix 平台和一些非 Unix 平台都可以使用它,那么只有当可执行文件指向 Python 解释器时才可用。当不满足上述需求时使用合理的默认值。
注意
在 Mac OS X(也可能是其他平台)上,可执行文件可能是包含多种体系结构的通用文件。
为了获得当前解释器的“64位”,查询sys.maxsize属性更加可靠:
is_64bits = sys.maxsize > 2**32
platform.machine()
返回机器类型,例如'i386'。如果无法确定值,则返回空字符串。
platform.node()
返回计算机的网络名称(可能不完全合格!)。如果无法确定值,则返回空字符串。
platform.platform(aliased=0, terse=0)
使用尽可能多的有用信息返回标识底层平台的单个字符串。
输出的目的是为了人类可读,而不是机器可解析的。它可能在不同的平台上看起来不同,这是有意的。
如果 aliased 为 true,则该函数将为各种平台使用别名,这些平台报告的系统名称与通用名称不同,例如,SunOS 将报告为 Solaris。该system_alias()功能用于实现这一点。
将 terse 设置为 true 会导致该函数仅返回识别平台所需的绝对最小信息。
platform.processor()
返回(实际)处理器名称,例如'amdk6'。
如果无法确定值,则返回空字符串。请注意,许多平台不提供这些信息,或只是返回相同的值machine()。NetBSD 这样做。
platform.python_build()
返回一个元组(buildno, builddate),将 Python 构建号和日期声明为字符串。
platform.python_compiler()
返回标识用于编译 Python 编译器的字符串。
platform.python_branch()
返回一个标识 Python 实现 SCM 分支的字符串。
2.6版本中的新功能。
platform.python_implementation()
返回一个标识 Python 实现的字符串。可能的返回值是:'CPython','IronPython','Jython','PyPy'。
2.6版本中的新功能。
platform.python_revision()
返回一个标识 Python 实现 SCM 修订版的字符串。
2.6版本中的新功能。
platform.python_version()
以字符串形式返回 Python 版本'major.minor.patchlevel'。
请注意,与 Python 不同sys.version,返回的值将始终包含 patchlevel(它默认为0)。
platform.python_version_tuple()
将 Python 版本作为(major, minor, patchlevel)字符串的元组返回。
请注意,与 Python 不同sys.version,返回值将始终包含 patchlevel(它默认为'0')。
platform.release()
返回系统的释放,例如'2.2.0'或者'NT'如果不能确定的值返回一个空字符串。
platform.system()
返回系统 / OS 的名称,例如'Linux','Windows'或'Java'。如果无法确定值,则返回空字符串。
platform.system_alias(system, release, version)
返回(system, release, version)别名到用于某些系统的常用市场名称。它还会在某些情况下对信息进行一些重新排序,否则会导致混淆。
platform.version()
返回系统的发行版本,例如'#3 on degas'。如果无法确定值,则返回空字符串。
platform.uname()
相当便携的 uname 界面。返回(system, node, release, version, machine, processor)标识底层平台的字符串元组。
请注意,与os.uname()函数不同,这还会将可能的处理器信息作为附加元组条目返回。
无法确定的条目设置为''。
2. Java 平台
platform.java_ver(release='', vendor='', vminfo=('', '', ''), osinfo=('', '', ''))
Jython 的版本界面。
返回一个元组,(release, vendor, vminfo, osinfo)其中 vminfo 是一个元组(vm_name, vm_release, vm_vendor),osinfo 是一个元组(os_name, os_version, os_arch)。无法确定的值被设置为作为参数给出的默认值(全部默认为'')。
3. Windows 平台
platform.win32_ver(release='', version='', csd='', ptype='')
从 Windows 注册表获取更多版本信息,并返回一个(release, version, csd, ptype)涉及操作系统版本,版本号,CSD级别(Service Pack)和操作系统类型(多/单处理器)的元组。
作为一个提示:p-型是'Uniprocessor Free'在单处理器 NT 机器和'Multiprocessor Free'多处理器机器。在“免费”指的是操作系统版本是免费的调试代码。它也可以声明'检查',这意味着操作系统版本使用调试代码,即检查参数,范围等的代码。
注意
这个函数最适合安装 Mark Hammond 的win32all软件包,但也适用于Python 2.3 及更高版本(在 Python 2.6中添加了对此的支持)。它显然只能在 Win32 兼容平台上运行。
3.1. Win95 / 98具体
platform.popen(cmd, mode='r', bufsize=None)
便携式popen()界面。找到一个喜欢的工作 popen 实现win32pipe.popen()。在 Windows NT 上,win32pipe.popen()应该工作; 在 Windows 9x 上,它由于 MS C 库中的错误而挂起。
4. Mac OS 平台
platform.mac_ver(release='', versioninfo=('', '', ''), machine='')
获取 Mac OS 版本信息并将其作为元组返回,(release, versioninfo, machine)其中versioninfo是元组(version, dev_stage, non_release_version)。
无法确定的条目设置为''。所有的元组条目都是字符串。
5. Unix 平台
platform.dist(distname='', version='', id='', supported_dists=('SuSE', 'debian', 'redhat', 'mandrake', ...))
这是现在提供的旧版功能linux_distribution()。对于新代码,请使用linux_distribution()。
两者之间的唯一区别是dist()总是返回从supported_dists参数中获取的分布的短名称。
自2.6版以来已弃用。
platform.linux_distribution(distname='', version='', id='', supported_dists=('SuSE', 'debian', 'redhat', 'mandrake', ...), full_distribution_name=1)
尝试确定 Linux OS 分发名称的名称。
supported_dists可能会给出定义要查找的 Linux 发行版的集合。它默认为由其发行文件名称标识的当前支持的Linux发行版的列表。
如果full_distribution_name为真(默认),则返回从操作系统读取的完整分发。否则,supported_dists使用从中取出的短名称。
返回(distname,version,id)默认为给定参数的参数的元组。id是版本号后的括号中的项目。它通常是版本代号。
2.6版本中的新功能。
platform.libc_ver(executable=sys.executable, lib='', version='', chunksize=2048)
尝试确定文件可执行文件(默认为 Python 解释器)所链接的libc版本。(lib, version)如果查找失败,则返回默认给定参数的字符串元组。
请注意,此函数深入了解不同 libc 版本为可执行文件添加符号的方式,可能仅适用于使用 gcc 编译的可执行文件。
该文件被读出并在块扫描 CHUNKSIZE 字节。
Python 中文开发手册