Документация Python неофициальный перевод
Содержание страницы

platform – Доступ к идентификационным данным нижележащей платформы.platform – Access to underlying platform’s identifying data.

Примечание

Конкретные платформы перечислены в алфавитном порядке, Linux включён в раздел Unix.

КроссплатформенныеCross Platform

platform.architecture(executable=sys.executable, bits='', linkage='')

Запрашивает у указанного исполняемого файла (по умолчанию – двоичный файл интерпретатора Python) различные сведения об архитектуре.

Возвращает кортеж (bits, linkage), содержащий информацию о разрядности архитектуры и формате компоновки, используемом для исполняемого файла. Оба значения возвращаются в виде строк.

Значения, которые не удалось определить, возвращаются в соответствии с предустановками параметров. Если bits указан как '', то sizeof(pointer) (или sizeof(long) в Python версии < 1.5.2) используется как индикатор поддерживаемого размера указателя.

Функция использует системную команду file для выполнения работы. Она доступна на большинстве (если не на всех) Unix-платформах и некоторых платформах, не относящихся к Unix, и только если исполняемый файл указывает на интерпретатор Python. Разумные значения по умолчанию используются, когда указанные условия не выполняются.

platform.machine()
Возвращает тип машины, например 'i386'. Если значение не удалось определить, возвращается пустая строка.
platform.node()
Возвращает сетевое имя компьютера (может быть не полностью определённым!). Возвращается пустая строка, если значение не удаётся определить.
platform.platform(aliased=0, terse=0)

Возвращает одну строку, идентифицирующую базовую платформу с максимально возможным количеством полезной информации.

Результат предназначен для чтения человеком, а не для машинного разбора. Он может выглядеть по-разному на разных платформах, и это предусмотрено.

Если aliased истинно, функция будет использовать псевдонимы для различных платформ, которые сообщают системные имена, отличающиеся от общепринятых; например, SunOS будет отображаться как Solaris. Для реализации этого используется функция system_alias().

Установка terse в true заставляет функцию возвращать только абсолютный минимум информации, необходимый для идентификации платформы.

platform.processor()

Возвращает (настоящее) имя процессора, например 'amdk6'.

Если значение не удалось определить, возвращается пустая строка. Обратите внимание: многие платформы не предоставляют эту информацию или просто возвращают то же значение, что и в случае с machine(). NetBSD так и делает.

platform.python_build()
Возвращает кортеж (buildno, builddate), содержащий номер сборки и дату сборки в виде строк.
platform.python_compiler()
Возвращает строку, идентифицирующую компилятор, использованный для компиляции Python.
platform.python_branch()
Возвращает строку, идентифицирующую ветку SCM реализации Python.
platform.python_implementation()
Возвращает строку, идентифицирующую реализацию Python. Возможные возвращаемые значения: ‘CPython’, ‘IronPython’, ‘Jython’
platform.python_revision()
Возвращает строку, идентифицирующую ревизию SCM реализации Python.
platform.python_version()

Возвращает версию Python в виде строки 'major.minor.patchlevel'

Обратите внимание: в отличие от sys.version, возвращаемое значение всегда включает уровень патча (по умолчанию 0).

platform.python_version_tuple()

Возвращает версию Python в виде кортежа строк (major, minor, patchlevel).

Обратите внимание: в отличие от sys.version, возвращаемое значение всегда включает уровень патча (по умолчанию '0').

platform.release()
Возвращает релиз системы, например '2.2.0' или 'NT'. Если значение не удалось определить, возвращается пустая строка.
platform.system()
Возвращает имя системы/ОС, например 'Linux', 'Windows' или 'Java'. Если значение не удалось определить, возвращается пустая строка.
platform.system_alias(system, release, version)
Возвращает (system, release, version), приведённый к общеупотребительным маркетинговым названиям, используемым для некоторых систем. В некоторых случаях он также меняет порядок информации, чтобы избежать путаницы.
platform.version()
Возвращает номер версии выпуска системы, например '#3 на degas'. Если определить значение не удаётся, возвращается пустая строка.
platform.uname()

Довольно переносимый интерфейс uname. Возвращает кортеж строк (system, node, release, version, machine, processor), идентифицирующих базовую платформу.

Обратите внимание, что в отличие от функции os.uname(), эта функция также возвращает возможную информацию о процессоре как дополнительный элемент кортежа.

Записи, которые не удаётся определить, устанавливаются в ''.

Платформа JavaJava Platform

platform.java_ver(release='', vendor='', vminfo=('', '', ''), osinfo=('', '', ''))

Интерфейс версии для JPython.

Возвращает кортеж (release, vendor, vminfo, osinfo), где vminfo является кортежем (vm_name, vm_release, vm_vendor), а osinfo – кортежем (os_name, os_version, os_arch). Значения, которые не удаётся определить, устанавливаются в значения по умолчанию, задаваемые параметрами (все они по умолчанию равны '').

Платформа WindowsWindows Platform

platform.win32_ver(release='', version='', csd='', ptype='')

Получает дополнительные сведения о версии из реестра Windows и возвращает кортеж (version, csd, ptype), соответствующий номеру версии, уровню CSD и типу ОС (однопроцессорная или многопроцессорная).

В качестве подсказки: ptype равен 'Uniprocessor Free' на однопроцессорных машинах NT и 'Multiprocessor Free' на многопроцессорных. ‘Free’ указывает, что версия ОС не содержит отладочного кода. Также может быть указано ‘Checked’, что означает, что версия ОС использует отладочный код, то есть код, проверяющий аргументы, диапазоны и т.д.

Примечание

Примечание: эта функция лучше всего работает с установленным пакетом win32all Марка Хэммонда, а также на Python 2.3 и новее (поддержка была добавлена в Python 2.6). Она, очевидно, работает только на платформах, совместимых с Win32.

Специфично для Win95/98Win95/98 specific

platform.popen(cmd, mode='r', bufsize=None)
Переносимый интерфейс popen(). Ищет рабочую реализацию popen, отдавая предпочтение win32pipe.popen(). На Windows NT win32pipe.popen() должна работать; на Windows 9x она зависает из-за ошибок в библиотеке MS C.

Платформа Mac OSMac OS Platform

platform.mac_ver(release='', versioninfo=('', '', ''), machine='')

Получает информацию о версии Mac OS и возвращает её в виде кортежа (release, versioninfo, machine), где versioninfo является кортежем (version, dev_stage, non_release_version).

Записи, которые невозможно определить, устанавливаются в ''. Все элементы кортежа являются строками.

Документация по нижележащему API gestalt доступна онлайн по адресу http://www.rgaros.nl/gestalt/.

Платформы UnixUnix Platforms

platform.dist(distname='', version='', id='', supported_dists=('SuSE', 'debian', 'redhat', 'mandrake', ...))
Это другое имя для linux_distribution().
platform.linux_distribution(distname='', version='', id='', supported_dists=('SuSE', 'debian', 'redhat', 'mandrake', ...), full_distribution_name=1)

Пытается определить имя дистрибутива Linux.

supported_dists может быть задан для определения набора дистрибутивов Linux, которые следует искать. По умолчанию он представляет собой список поддерживаемых в настоящее время дистрибутивов Linux, идентифицируемых по имени файла выпуска.

Если full_distribution_name имеет значение true (по умолчанию), возвращается полное название дистрибутива, полученное из ОС. В противном случае используется краткое имя из supported_dists.

Возвращает кортеж (distname,version,id), который по умолчанию принимает значения, переданные в качестве параметров. id – это элемент в скобках после номера версии. Обычно это кодовое имя версии.

platform.libc_ver(executable=sys.executable, lib='', version='', chunksize=2048)

Пытается определить версию libc, с которой слинкован исполняемый файл (по умолчанию – интерпретатор Python). Возвращает кортеж строк (lib, version), которые по умолчанию принимают заданные параметры в случае неудачи поиска.

Обратите внимание, что эта функция обладает глубокими знаниями о том, как разные версии libc добавляют символы в исполняемый файл, и, вероятно, применима только к исполняемым файлам, скомпилированным с помощью gcc.

Файл читается и сканируется блоками по chunksize байт.