Получение информации об операционной системе
Прежде чем Вы создадите свою первую структуру каталогов, Вы увидите, как получить информацию о текущей операционной системе. Это действительно просто, потому что модуль os предоставляет функцию с именем uname, которая возвращает объект, содержащий следующие атрибуты:
- systemname — хранит имя операционной системы;
- nodename — хранит имя машины в сети;
- release — хранит выпуск операционной системы;
- version — хранит версию операционной системы;
- machine — хранит идентификатор оборудования, например x86_64.
Посмотрим, как это работает на практике:
import os
print(os.uname())
Результат:
posix.uname_result(sysname='Linux', nodename='192d19f04766', release='4.4.0-164-generic', version='#192-Ubuntu SMP Fri Sep 13 12:02:50 UTC 2019', machine='x86_64')
output
Как видите, функция uname возвращает объект, содержащий информацию об операционной системе. Приведенный выше код был запущен в Ubuntu 16.04.6 LTS, поэтому не удивляйтесь, если Вы получите другой результат, потому что он зависит от Вашей операционной системы.
К сожалению, функция uname работает только в некоторых системах Unix. Если вы используете Windows, вы можете использовать функцию uname в модуле platform, которая возвращает аналогичный результат.
Модуль os позволяет быстро идентифицировать операционную систему с помощью атрибута name, который поддерживает одно из следующих имен:
- posix — Вы получите это имя, если используете Unix;
- nt — Вы получите это имя, если используете Windows;
- java — Вы получите это имя, если Ваш код написан в Jython.
Для Ubuntu 16.04.6 LTS атрибут name возвращает имя posix:
import os
print(os.name)
Result:
posix
output
ПРИМЕЧАНИЕ: В системах Unix есть команда с именем uname, которая возвращает ту же информацию (если Вы запускаете ее с параметром -a), что и функция uname.