Как определить, работает ли моя оболочка python в 32-битном или 64-битном режиме на OS X?
Мне нужен способ сказать, в каком режиме оболочка находится внутри оболочки.
Я пытался просмотреть модуль платформы, но, похоже, он только говорит вам о битовая архитектура и формат компоновки, используемый для исполняемого файла «: двоичный файл скомпилирован как 64-битный, хотя (я работаю на OS X 10.6), поэтому он, кажется, всегда сообщает о 64-битном, даже если я использую методы описанный здесь для включения 32-битного режима).
14 ответов
ОБНОВЛЕНО : Один из способов — посмотреть на sys.maxsize как здесь:
sys.maxsize был представлен в Python 2.6. Если вам нужен тест для более старых систем, этот немного более сложный тест должен работать на всех выпусках Python 2 и 3:
Кстати, у вас может возникнуть желание использовать platform.architecture() для этого. К сожалению, его результаты не всегда надежны, особенно в случае универсальных двоичных файлов OS X .
При запуске интерпретатора Python в терминале / командной строке вы также можете увидеть строку вроде:
Python 2.7.2 (default, Jun 12 2011, 14:24:46) [MSC v.1500 64 bit (AMD64)] on win32
Где [MSC v.1500 64 bit (AMD64)] означает 64-битный Python. Работает для моей конкретной настройки.
Сделайте python -VV в командной строке. Должен вернуть версию.
Для непрограммного решения, посмотрите в мониторе активности. Он перечисляет архитектуру 64-битных процессов как «Intel (64-бит)».
Архитектура платформы не является надежным способом. Вместо нас:
В основном вариант ответа Мэтью Маршалла (со структурой из std.library):
Примечание. В Mac OS X (и, возможно, на других платформах) исполняемые файлы могут быть универсальными файлами с несколькими архитектурами.
Чтобы получить «64-битность» текущего интерпретатора, более надежно запросить атрибут sys.maxsize:
В моей системе Centos Linux я сделал следующее:
1) Запустил интерпретатор Python (я использую 2.6.6)
2) Запустил следующий код:
3.5.1 (v3.5.1: 37a07cee5969, 6 декабря 2015, 01:54:25) [MSC v.1900 64 бит (AMD64) ]
Попробуйте использовать ctypes, чтобы получить размер пустого указателя:
Это будет 4 для 32 бит или 8 для 64 бит.
struct.calcsize(«P») возвращает размер байтов, необходимых для хранения одного указателя. В 32-битной системе он вернул бы 4 байта. В 64-битной системе он вернул бы 8 байтов.
Поэтому следующее вернет 32 , если вы работаете с 32-битным питоном, и 64 , если вы работаете с 64-битным питоном:
Python 2
Python 3
platform.architecture() проблематично (и дорого).
Удобно тестируйте sys.maxsize > 2**32 начиная с Py2.6.
Это надежный тест для фактического (по умолчанию) размера указателя и совместимый по крайней мере с Py2.3: struct.calcsize(‘P’) == 8 . Также: ctypes.sizeof(ctypes.c_void_p) == 8 .
Примечания: Могут быть сборки с опцией gcc -mx32 или около того, которые являются приложениями 64-битной архитектуры, но по умолчанию используют 32-битные указатели (экономия памяти и скорости). «sys.maxsize = ssize_t» не может строго представлять размер указателя C (обычно это 2**31 — 1 в любом случае). И были / есть системы, которые имеют разные размеры указателя для кода и данных, и необходимо уточнить, что именно является целью определения «32-битного или 64-битного режима?»
Открыть консоль Python:
Он должен отображать «64-битный» или «32-битный» в зависимости от вашей платформы.
В качестве альтернативы (в случае двоичных файлов OS X):
Как проверить версию Python в различных ОС
Итак, вы, ребята, хотите знать, как проверить версию Python. Простой ответ-запустить python-V в терминале командной строки или оболочке.
- Автор записи
Итак, вы, ребята, нажали на эту статью, чтобы узнать решение Как проверить версию Python. Простой ответ – запустить python -V в терминале командной строки или оболочке.
В этой статье мы предоставим вам информацию о том, как проверить версию Python в вашей операционной системе. Это может быть полезно при установке приложений, требующих определенной версии Python.
Мы также покажем вам, как программно определить, какая версия Python установлена в системе, в которой запущен скрипт Python. Например, при написании скриптов Python вам нужно будет определить, поддерживает ли скрипт версию Python, установленную на компьютере пользователя.
Python-это интерпретируемый, высокоуровневый язык программирования общего назначения. Созданная Гвидо ван Россумом и впервые выпущенная в 1991 году, философия дизайна Python подчеркивает читабельность кода с заметным использованием значительных пробелов.
Как выполняется управление версиями Python
Выпуски Python production-ready версируются по следующей схеме:
Например, в Python 3.6.8 3 является основной версией, 1 – второстепенной версией, а 2 – микро-версией.
- МАЙОР – Python имеет две основные версии, которые не полностью совместимы: Python 2 и Python 3. Например, 3.5.7, 3.7.2 и 3.8.0 являются частью основной версии Python 3.
- МИНОР – Эти релизы приносят новые функции и функции. Например, 3.6.6, 3.6.7 и 3.6.8 являются частью младшей версии Python 3.6.
- МИКРО – Как правило, новые микро-версии содержат различные исправления ошибок и улучшения.
Как проверить версию Python в Windows
Windows не имеет предустановленного Python. Поэтому установщик по умолчанию включен python.org это x86, который может не быть архитектурой вашего ПК. Таким образом, информация о типе процессора доступна в настройках Windows. Однако если ваша система основана на процессоре x64, вам необходимо загрузить установщик x86-64.
Windows не имеет предустановленного Python. Поэтому установщик по умолчанию включен python.org это x86, который может не быть архитектурой вашего ПК. Таким образом, информация о типе процессора доступна в настройках Windows. Однако если ваша система основана на процессоре x64, вам необходимо загрузить установщик x86-64 с Python.
- Откройте Поиск Windows. Если вы еще не видите окно поиска на панели задач, нажмите на увеличительное стекло или кружок рядом с ним.
, или нажмите ⊞ Win+S.
2. Введите python в строку поиска. Появится список совпадающих результатов.
Найдите версию в первой строке. Это число сразу после слова “Python” в левом верхнем углу окна (например, 2.7.14).
Как проверить версию Python в Windows 7
Шаги для проверки версии Python в вашей операционной системе Windows 7:
- Откройте приложение командной строки: Нажмите клавишу Windows или перейдите к значку Windows на панели задач , чтобы открыть начальный экран. После этого в поле поиска введите CMD. Нажмите клавишу enter.
- Выполните команду: введите python -V или python –version и нажмите клавишу enter.
- Итак, наконец, версия Python появляется в следующей строке под вашей командой.
Как проверить версию Python в Linux
Большинство современных дистрибутивов Linux поставляются с предустановленным Python.
Чтобы проверить установленную версию, откройте окно терминала и введите следующее:
Python 2
Python 3
- # – требует, чтобы данные команды Linux выполнялись с привилегиями root либо непосредственно как пользователь root, либо с помощью команды sudo
- $ – требует, чтобы данные команды Linux выполнялись как обычный непривилегированный пользователь
В вашей системе могут быть установлены версии Python2 и Python3. Первый намек на версию python, установленную вашей системой, заключается в проверке установленного двоичного исполняемого файла python:
Другой путь, по которому можно установить двоичные файлы Python, – это/usr/local/bin/. Как вы можете видеть, в нашей системе установлены версии Python 2 и Python 3.
Как проверить версию Python в Mac OS
Python, вероятно, уже установлен в вашей системе. Чтобы проверить, установлен ли он, перейдите в раздел Applications>Utilities и нажмите на Terminal. (Вы также можете нажать клавишу command-пробел, ввести terminal, а затем нажать Enter.)
Узнайте, какая версия Python установлена, выполнив команду python –version:
Если вы видите что-то подобное, Python 2.7-это ваша версия по умолчанию. Вы также должны посмотреть, установлен ли у вас Python 3:
Как проверить версию Python в CentOS
1. Проверьте версию Python:
2. После этого введите командную строку python:
3. Для выхода выполните следующую команду:
Как проверить версию Python в Raspberry Pi
В Raspberry Pi, чтобы проверить версию Python в командной строке, запустите python с опцией “-V”:$ python -V$ python3 -V$ pypy -V
Чтобы проверить запуск версии python в коде python:
Как проверить версию Python в файле.vimrc
Во-первых, проверьте, есть ли у вас Python в вашем Vim и какую версию вы используете. Кроме того, он возвращает версию, аналогичную тому, как Vim делает это со своей версией. Таким образом, 204-это результат для Python 2.4, 207-для Python 2.7 и так далее.
Теперь мы можем создавать плагины/пакеты в зависимости от версий:
Как проверить версию Python в скрипте
Используйте следующий фрагмент кода, чтобы проверить правильность версии Python:
Когда этот скрипт запустится, он проверит, установлен ли в системе Python 3.7. Однако если нет, то он отправит уведомление и отобразит текущую версию Python.
Проверьте версию Python с помощью sys. версия
Однако иногда вам нужно проверить версию Python программно, из вашего скрипта Python. Тогда вам лучше всего использовать модуль sys:
Выход должен быть именованным кортежем, как этот:
Как проверить версию Python программно
Python2 и Python3 принципиально различны. Код, написанный на Python 2.x, может не работать в Python 3.x.
Кроме того, модуль sys, доступный во всех версиях Python, предоставляет системные параметры и функции. Поэтому sys.version_info позволяет определить версию Python, установленную в системе. Прежде всего, это кортеж, содержащий пять номеров версий: major, minor, micro, release level и serial.
Если вы запустите скрипт с использованием Python версии менее 3.5 он выдаст следующий результат:
Как проверить версию Python С помощью функции python_version()
Еще одна функция для проверки версии python-это функция python_version (). Но сначала нам нужно импортировать модуль платформы, как показано ниже.
Список всех версий Python:
- Бета-версия Python
- Python 1.0
- Python 2.0
- Python 3.0
Дата выхода бета-версии Python
Так как первоначальная версия Python была выпущена в 1991 году. Так что это был 0.9.0, а не полный номер 1, так как он еще не был готов к прайм-тайму. Эти версии были выпущены по следующему графику:
- Python 0.9.0 – 20 февраля 1991 г.
- Python 0.9.1 – Февраль 1991
- Python 0.9.2 – Осень 1991 года
- Python 0.9.4 – 24 декабря 1991 г.
- Python 0.9.5 – 2 января 1992 г.
- Python 0.9.6 – 6 апреля 1992 г.
- Python 0.9.8 – 9 января 1993 г.
- Python 0.9.9 – 29 июля 1993 г.
Версия Python 1.0-Дата выхода
Первая официальная версия Python была выпущена в 1994 году.
- Python 1.0 – Январь 1994
- Python 1.2 – 10 апреля 1995 г.
- Python 1.3 – 12 октября 1995 г.
- Python 1.4 – 25 октября 1996 г.
- Python 1.5 – 31 декабря 1997 г.
- Python 1.6 – 5 сентября 2000 г.
Версия Python 2.0-Дата выхода
Выпущенный в 2000 году, Python 2.0 не только предлагал целый ряд новых функций, но и новая версия была переведена на основанный на сообществе, совместный язык с открытым исходным кодом.
- Python 2.0 – 16 октября 2000 г.
- Python 2.1 – 15 апреля 2001 г.
- Python 2.2 – 21 декабря 2001 г.
- Python 2.3 – 29 июля 2003 г.
- Python 2.4 – 30 ноября 2004 г.
- Python 2.5 – 19 сентября 2006 г.
- Python 2.6 – 1 октября 2008 г.
- Python 2.7 – 4 июля 2010 г.
Python 2.7 был последним релизом в серии 2.x. В ноябре 2014 года было объявлено, что Python 2.7 будет поддерживаться до 2020 года, но пользователям было рекомендовано как можно скорее перейти на Python 3.
Версия Python 3.0-Дата выхода
Python 3.0 также известен как “Python 3000” или “Py3K”, и это текущая основная версия Python.
- Python 3.0 – 3 декабря 2008 г.
- Python 3.1 – 27 июня 2009 г.
- Python 3.2 – 20 февраля 2011 г.
- Python 3.3 – 29 сентября 2012 г.
- Python 3.4 – 16 марта 2014 г.
- Python 3.5 – 13 сентября 2015 г.
- Python 3.6 – 23 декабря 2016 г.
- Python 3.7 – 27 июня 2018 г.
- Python 3.8 – 14 октября 2019 г.
- Python 3.9 – 5 октября 2019 г.
Python Удалить дубликаты Из спискаPython Print Without NewlineLearn Python the Hard Way Review PDFHow to Get a Data Science Internship With No ExperiencePython Map
Вывод
Поэтому мы попытались рассказать о том, как проверить версию Python в различных ОС, и это легко, просто не забывайте делать это время от времени – возможно, поместив напоминание в свой календарь.
В заключение, если у вас все еще есть некоторые проблемы относительно того, как проверить версию Python, вы можете Прокомментировать ниже.
Python-сообщество
Чтото гугл не помог. Задача в следующем: скриптом нужно определить тип и версию операционной системы и в зависимости от того в какой операционной системе запущен скрипт, выполнить соответствующий код допустимый в данной ОС. Питон 2.6.5.
Отредактировано (Июль 9, 2010 14:59:27)
#2 Июль 9, 2010 15:07:30
Автоматическое определение ОС.
#3 Июль 9, 2010 15:58:30
Автоматическое определение ОС.
#4 Июль 10, 2010 07:37:20
Автоматическое определение ОС.
#5 Июль 10, 2010 11:33:30
Автоматическое определение ОС.
По-моему get_platform возвращает то же самое, что и sys.platform. При этом разрядность системы вряд ли удастся определить, т.к. даже на х64 этот метод возвращает win32, видимо, из-за того, что интерпретатор работаем в x86 режиме.
Кстати, есть еще один способ:
#6 Июль 10, 2010 15:51:56
Автоматическое определение ОС.
я использовал platform.architecture()
разрядность определяется на ура.
Для моей убунты это (’64bit’, ‘ELF’)
Что было на XP и Vista — не помню, но 64bit/32bit присутствовало. Использовал это для создания платформозависимых оберток на ctypes.
sys.platform/platform.system() определяют семейство операционной системы — ‘linux2’ и ‘Linux’ в моем случае соответственно.
‘win32’ вносит некоторую путаницу, но это собирательное название для Microsoft Windows начиная с Windows 95 — безотносительно к архитектуре процессора, на котором исполняется код. Т.е. даже Windows Mobile на ARM покажет ‘win32’, если ничего не путаю.
#7 Июль 10, 2010 17:43:08
Автоматическое определение ОС.
Насчет win32 вы правы, я и не говорил, что ожидал чего-то в духе “win64”, я предпологал, что на x64 увижу что-то вроде “win32-x64”.
Кстати, модуль platform на Win7 x64 работает вот так:
Отредактировано (Июль 10, 2010 17:43:48)
#8 Июль 11, 2010 00:49:12
Автоматическое определение ОС.
надо полагать, у вас все же 32 битный питон, работающий в Wow64.
platform.architecture возвращает архитектуру для вызвавшего его процесса.
Для винды я бы вызывал GetVersionEx/GetSystemInfo/GetNativeSystemInfo через ctypes
#9 Июль 11, 2010 01:57:28
Автоматическое определение ОС.
Так и есть, я об этом писал выше.
С помощью GetVersionExW получилось, но слегка замороченно как-то…
Я более простой метод нашел:
Отредактировано (Июль 11, 2010 02:00:58)
#10 Июль 11, 2010 23:15:58
Автоматическое определение ОС.
за информацию о 2.7/3.2 спасибо, не знал.
Только какое-то немного сомнительное решение.
Рассмотрим такую ситуацию: мне нужно подключать разные dll в зависимости от используемой архитектуры.
В старом подходе все было ясно. Теперь же прийдется делать какую-то другую проверку. Ведь если у меня 32 битный питон, то уже не столь важно, какая разрядность у самой винды — будут работать только 32 битные расширения и точка.
К переменным окружения отношусь несколько настороженно. При запуске дочернего процесса они, конечно, наследуются по умолчанию. Но вместе с тем запускающий процесс может установить их как душа пожелает или вообще сбросить. Получится, что ваш код имеет шанс неправильно отработать только из-за того, что криворукий программист сделал несовсем корректную заускалку. Выяснение проблемы может быть непростым, а все что вы услышите будет звучать как “программа ххх не работает, если я вызываю ее через subprocess”. Поверьте, я такое не раз видел.
Статья Получаем информацию о системе с помощью Python. Часть #1
Информация о системе. Это всегда лакомый кусочек для каждого, кто имеет хоть какое-то отношение к сбору информации. Ведь чем больше информации о системе будет собрано, тем легче будет в будущем идентифицировать клиента. Составить его индивидуальный отпечаток, по которому он будет безошибочно определятся. Для примера можно взять активацию операционной системы Windows. Вы еще не успели зайти в параметры и настроить систему, а она уже активировалась. При наличии у вас, конечно же интернета.
А что же может предложить Python в этом плане? Скажем так, много чего интересного. Если задастся вопросом, то можно углубляться в эту тему, тему сбора информации, очень долгое время. И порою, кажется, что этой теме нет конца. Как говорил Козьма Прутков: «Нельзя объять необъятное».
Давайте же узнаем, как с помощью Python собрать информацию об операционной системе и желательно, в перспективе и о его железной составляющей. Ведь чем большей информацией мы владеем, тем больше простора для действий.
Что понадобиться?
Из того, что нужно устанавливать, нам понадобиться библиотека psutil. Установить ее можно с помощью команды:
pip install psutil
Также нужно импортировать библиотеку json и модуль uname из библиотеки platform. Давайте сделаем это:
Итак, необходимые библиотеки установлены и импортированы, пора приступать к написанию программы. Что она должна уметь? Получать информацию о версии ОС, процессоре, RAM и прочих интересных подробностях. То есть, для начала, нам нужен сборщик информации, который пробежится по всем доступным параметрам и сложит их, к примеру, в словарь для удобства дальнейшего использования и чтения. Ну и конечно же, нужно вывести полученную информацию на экран. Хотя, это вовсе не обязательно. И нужно, чтобы это можно было легко отключить. А соответственно, понадобиться отдельная функция для печати. Ну и определение версии операционной системы. На данном этапе это не существенно. Так как те библиотеки, что используются в настоящее время, кроссплатформенные. Но, если мы хотим усовершенствовать программу и получить от нее еще больше результатов, это совершенно необходимо. Давайте же приступим.
На начальном этапе создадим функцию, с помощью которой будем переводить большое количество байтов, то есть информацию об объеме или частоте в формат, который будет удобен для восприятия. Назову ее def correct_size(bts, ending=’iB’). На входе она будет получать число, которое нужно перевести в воспринимаемый формат, и тут же укажем префикс для того, чтобы он автоматически подставлялся к полученному значению. Создадим список, в котором будут содержаться буквы, обозначающие определенный размер: килобайты, мегабайты, гигабайты, террабайты и петабайты. Мало ли что
После запустим цикл, в котором будет определено условие, срабатывающее тогда, когда количество байтов меньше 1024, то будем возвращать количество байтов и единицы измерения. В том случае, если условие не сработало, то байты будем делить целочисленно на size.
Сбор информации
Теперь можно приступить к сбору информации. Создадим функцию creating_file(), в которой и будем это делать. Создадим словарь, в который и будем складывать полученные значения по мере их поступления. Затем добавляем в словарь раздел «info». Это делается с помощью условия, в котором проверяется, есть ли такое значение в текущем словаре. Если его нет, то создаем и далее складываем в него получаемую информацию. Первым разделом в словаре будет system, в котором уже из названия понятно, что в нем будет содержаться информация о системе. Та, до которой сможем дотянуться на первоначальном этапе.
Для начала узнаем имя компьютера с помощью модуля uname() и его функции node. Кладем его в словарь. С помощью функции system модуля uname() узнаем наименование операционной системы: uname().system. Затем ее релиз, то есть, что это за версия. Семерка, десятка или восьмерка с помощью uname().release. Ее номер сборки: uname().version, а также архитектуру: 32 или 64 с помощью uname().machine.
Теперь переходим к процессору. Особо много информации мы не получим. Но хотя бы что-то. Получаем его семейство с помощью функции uname().processor. Записываем его в словарь и тут уже настало время подключить библиотеку psutil. С помощью нее узнаем количество физических ядер: psutil.cpu_count(logical=False). Для этого параметр logical ставим в значение False. Затем узнаем общее количество ядер: psutil.cpu_count(logical=True). Тут уже logical=True. И максимальную частоту, до которой способен турбиться данный процессор: psutil.cpu_freq().max:.2f>Мгц. Еще можно получить минимальную частоту, а также текущую частоту процессора.
Переходим к оперативной памяти. Узнаем ее полный объем: correct_size(psutil.virtual_memory().total. Чтобы значения выводились удобно для восприятия прогоняем ее через функцию для коррекции значений. Так же получаем доступную в данный момент память: correct_size(psutil.virtual_memory().available), и тот ее объем, который используется: correct_size(psutil.virtual_memory().used).
Все это, как я и писал ранее, складываем в словарь для дальнейшего использования. Вот код скрипта до этого момента.
Что же, двигаемся дальше, по нелегкому пути сбора информации. Следующим этапом будет получение информации о дисках. Так как их может быть несколько нужно будет использовать функцию, чтобы добыть все значения обо всех дисках, которые у нас в системе. Поэтому создаем цикл который будет пробегаться по значениям возвращаемым psutil.disk_partitions(). Здесь получаем с помощью psutil.disk_usage(partition.mountpoint) такие значения как имя диска, файловую систему, объем, сколько места занято и свободно, а также заполненность диска в процентах. Получение значений обернем в try – except для того, чтобы программа не вылетала с ошибкой. Потому, как попытка доступа к диску, который используется системой или другой программой, будет заблокирован. Поэтому, просто пропускаем этот этап и двигаемся далее. Ну и конечно складываем все в словарь.
Теперь получим информацию о сетевых интерфейсах, которые доступны в нашей системе. Сделаем это с помощью psutil.net_if_addrs().items(). Она возвращает такую информацию об интерфейсе как: Имя интерфейса, MAC-адрес, IPv4 и IPv6 адреса. Конечно же, в системе может быть установлено несколько сетевых адаптеров, не считая тех виртуальных адаптеров, которые добавляются программами VmWare и VirtualBox. И конечно же локальная петля, которая также является сетевым интерфейсом. Поэтому, запускаем цикл по значениям данной функции, а так как нам возвращается словарь, то отдельно определим переменную для имени интерфейса и остальных параметров. На данном этапе информацию о локальной петле я решил не включать, а просто пропустить с помощью условия. Так как мне показалось, что данная информация не особо ценна для исследования. Ну и конечно же, складываем все добытое непосильным трудом в словарь.
На выходе данная функция будет возвращать уже готовый полный словарь, который впоследствии используется для записи полученных значений в файл, а также для печати в терминале.
А теперь напишем функцию, с помощью которой будем распечатывать полученные значения в терминале, чтобы мы могли увидеть, что было собрано. На самом деле, это не самая сложная задача. Больше всего времени занимает декорирование, в буквальном смысле, вывода значений, чтобы они отображались приятно для глаза пользователя. Ну, то есть вас или меня. Того, кто будет пользоваться или просто протестирует данную программу.
Создадим функцию def print_info(dict_info), которая на входе получает собранный ранее словарь. Ну и далее запускаем цикл, в котором пробегаемся по всем значениям. Тут важный момент состоит в том, чтобы определить, какое из значений является вложенным словарем, чтобы и из него забрать все значения. Поэтому пишем условия, в которых определяем, является ли значение разделом со словарем. Если да, то заходим в него и забираем значения уже оттуда. После чего формируем принт с помощью f-строки и выводим на экран.
А теперь перейдем к функции main(), из которой все и запускается. Для начала определяем операционную систему с помощью uname().system и в зависимости от этого запускаем тот или иной код. На данном этапе, как вы видите, он одинаков. Так как определение операционной системы понадобиться в дальнейшем. Это для того, чтобы не использовать функции и команды предназначенные для Windows в Linux и наоборот. Ну и тут же производиться запись полученных значений в файл. Чтобы в потом можно было его легко читать и при необходимости даже использовать, возможно, в какой-нибудь утилите.
А теперь, чтобы вы понимали, как выглядит работа данной утилиты, предоставлю пару скриншотов из Windows и Linux, чтобы посмотреть, что там и там скрипт отрабатывает одинаково.
Результат работы программы в Windows:
Обратите внимание на то, что был создан JSON файл с именем компьютера и содержащий информацию о нем:
А это результат работы программы в Linux:
В результате работы программы также был создан JSON с параметрами системы. То, что некоторые параметры не отображаются, это не потому, что произошла ошибка, а потому, что код был запущен на виртуаках, на которых данных параметров просто нет. Как например толковой информации о процессоре.
Обратите внимание еще и на то, что для работы скрипта не требуются права администратора в Windows или суперпользователя в Linux. Все происходит от текущего пользователя с ограниченными правами в тихом и мирном режиме. Ничего, можно сказать, даже не шелохнется.
Хотя, тут, наверное, надо упомянуть, что, если собрать данный скрипт в exe с помощью того же PyInstaller, сразу же просыпается антивирусник и начинает почем зря лаять на бедную софтину. Мол троян, бэкдор, вредоносный код. Впрочем, как я почитал, антивирусники относятся к данного вида сборкам не очень благосклонно. Так как файл представляет собой не полноценный скомпилированный exe-файл, а что-то вроде архива, то во время работы он и распаковывается во временную директорию. А антивирусникам это не нравиться. Причем, независимо от того, какой у вас будет там код. Хоть «Hello Word» сделайте. А ругаться все равно будет. Так что, это не особо приятный факт. Но, думаю, что победить его можно. По крайней мере, нужно искать решения.
А на этом, на сегодня, пожалуй, все. В следующей части добавим еще парочку функций, которые уже будут более детально шерстить Windows. Даже попробуем достать лицензионный ключ, с помощью которого она активируется, независимо от того, зашит ли он в BIOS или просто вводился вручную. Ну или это цифровая лицензия. До встречи в следующей части.
Спасибо за внимание. Надеюсь, что данный код будет кому-нибудь полезен