Spec-Zone.ru › Python 3.9

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. При отсутствии вышеупомянутых условий используются разумные значения по умолчанию.

Примечание

На macOS (и, возможно, на других платформах) исполняемые файлы могут быть универсальными файлами, содержащими несколько архитектур.

Чтобы получить «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 приводит к возврату только абсолютно необходимой информации для идентификации платформы.

Изменено в версии 3.8: На macOS функция теперь использует mac_ver(), если она возвращает непустую строку релиза, для получения версии macOS, а не версии darwin.

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: Результат изменён с кортежа на namedtuple().

Платформа 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’, что означает, что версия ОС использует отладочный код, т.е. код, проверяющий аргументы, диапазоны и т.п.

platform.win32_edition()

Возвращает строку, представляющую текущую версию Windows, или None , если значение невозможно определить. Возможные значения включают, но не ограничиваются, 'Enterprise', 'IoTUAP', 'ServerStandard', и 'nanoserver'.

Добавлена в версии 3.8.

platform.win32_is_iot()

Возвращает True , если версия Windows, возвращённая функцией win32_edition(), распознаётся как версия IoT.

Добавлена в версии 3.8.

Платформа macOS

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

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

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

Платформы Unix

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

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

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

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

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

Spec-Zone.ru

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