首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

platform

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属性更加可靠:

代码语言:javascript
复制
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 字节。

扫码关注腾讯云开发者

领取腾讯云代金券

http://www.vxiaotou.com