Spec-Zone.ru › Python 3.6

platform — Доступ к идентифицирующим данным базовой платформы

Исходный код: Lib/platform.py

Примечание

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

16.14.1. Платформа кросс-платформенного доступа

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

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

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

Значения, которые невозможно определить, возвращаются в соответствии с заданными значениями по умолчанию. Если параметр bits задан как '', то 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()

Возвращает строку, идентифицирующую ветвь SCM реализации Python.

platform.python_implementation()

Возвращает строку, идентифицирующую реализацию Python. Возможные значения: ‘CPython’, ‘IronPython’, ‘Jython’, ‘PyPy’.

platform.python_revision()

Возвращает строку, идентифицирующую номер ревизии SCM реализации Python.

platform.python_version()

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

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

platform.python_version_tuple()

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

Обратите внимание, что в отличие от версии Python 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 on degas'. Если значение невозможно определить, возвращается пустая строка.

platform.uname()

Достаточно портативный интерфейс uname. Возвращает namedtuple(), содержащий шесть атрибутов: system, node, release, version, machine и processor.

Обратите внимание, что это добавляет шестой атрибут (processor), отсутствующий в результате os.uname(). Также имена атрибутов отличаются для первых двух атрибутов; os.uname() называет их sysname и nodename.

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

Изменено в версии 3.3: Результат изменён с кортежа на namedtuple.

16.14.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). Значения, которые невозможно определить, устанавливаются в значения по умолчанию, указанные как параметры (все по умолчанию '').

16.14.3. Платформа Windows

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

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

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

Примечание

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

16.14.3.1. Указанные для Win95/98

platform.popen(cmd, mode='r', bufsize=-1)

Портативный интерфейс popen(). Находит рабочую реализацию popen, отдавая предпочтение win32pipe.popen(). В Windows NT win32pipe.popen() должен работать; в Windows 9x он зависает из-за ошибок в библиотеке MS C.

Устарело начиная с версии 3.3: Эта функция устарела. Используйте модуль subprocess. Обратите особое внимание на раздел Замена устаревших функций модулем subprocess.

16.14.4. Платформа Mac OS

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

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

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

16.14.5. Unix-платформы

platform.dist(distname='', version='', id='', supported_dists=('SuSE', 'debian', 'redhat', 'mandrake', ...))

Это другое название для linux_distribution().

Устарело начиная с версии 3.5, будет удалено в версии 3.8: См. альтернативу, например, пакет distro.

END_OF_DOCUMENT_MARKER
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 — это элемент в скобках после номера версии. Обычно это кодовое имя версии.

Устарело начиная с версии 3.5, будет удалено в версии 3.8: Смотрите альтернативы, например, пакет distro.

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

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

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

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

© 2001–2020 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.6/library/platform.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API