Spec-Zone.ru › Python 3.7

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

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

Примечание

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

Переносимые платформы

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

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: Результат изменен с кортежа на именованный кортеж.

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

Платформа 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.

Win95/98 specific

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

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

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

Платформа Mac OS

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

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

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

Платформы 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.7/library/platform.html

Spec-Zone.ru

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