Друкарня від WE.UA

Як отримати дані про свою систему та комп’ютер за допомогою platform?

Зміст

Сьогодні у цій статті ми дізнаємося як отримати інформацію про свою систему та комп’ютер за допомогою модуля platform у Python. Модуль platfrom дозволяє отримувати різного роду інформацію про ОС та комп’ютер користувача. Також треба зазначити той факт, що platform — це вбудований Python модуль, тобто його треба просто імпортувати без попередньго встановлення.

Архітектура ОС

Отже, переходимо до розгляду функціоналу цього модуля. Першою ми розглянемо функцію architecture(), яка визначає архітектуру вашої системи (64-біт або 32-біт) та тип середовища, у якому запускається наш код.

Ось застосування функції:

import platform

print(platform.architecture())
('64bit', 'WindowsPE')

На виході отримуємо кортеж з описаними вище двома значеннями.

Інформація про процесор

Наступною на огляді у нас буде функція machine(), яка надає можливість отримати дані про те, який процесор стоїть на даному комп’ютері.

Ось як це виглядає:

print(platform.machine())
AMD64

Мережеве ім’я

Далі подивимося на node() — функцію, завдяки якій можна визначити мережеве ім’я комп’ютера. Ось таким чином вона працює:

print(platform.node())
DESKTOP-HL7DJDG

Мережеве ім’я існує для того, щоб до нього могли звератися для різного роду маніпуляцій з ним.

Загальна інформація про ОС

Наступним предметом нашої цікавості буде функція platform(). Щодо її прзначення, то вона виводить дані про ОС, її версію та збірку — загальну інформацію про ОС.

Працює дана функція таким чином:

print(platform.platform())
Windows-10-10.0.19045-SP0

Більш детальна інформація про процесор

Щоб отримати більш детальну інформацію процесора за допомогою platform, треба використати функцію processor(). Також важливо відмітити той факт, що processor() дає змогу отримати більш детальні дані про процесор, у той час як функція machine() повертає неповну назву з архітектурою системи того самого процесора. Після того, як ми розібралися у суті цієї функції, ми можемо поглянути на неї у дії:

print(platform.processor())
AMD64 Family 23 Model 17 Stepping 0, AuthenticAMD

І так як ми дещо порівнювали processor() та machine(), то, думаю було б добре вказати поряд приклад з machine():

print(f"processor(): {platform.processor()}\n"
      f"machine(): {platform.machine()}")
processor(): AMD64 Family 23 Model 17 Stepping 0, AuthenticAMD
machine(): AMD64

Загальна інформація про прилад

Функція uname() просто об’єднує усі дані, котрі ми отримали раніше за допомогою функцій system(), node(), release(), version() та machine(). Дивимося на неї:

print(platform.uname())
uname_result(system='Windows', node='DESKTOP-HL7DJDG', release='10', version='10.0.19045', machine='AMD64')

Збірка інтерпретатора

Функція python_build() призначена для отримання даних щодо збірки інтерпретатора мови Python. Якщо казати більш конкретно, то вона надає дані про номер збірки та дату й час збірки.

Приклад:

print(platform.python_build())
('tags/v3.9.13:6de2ca5', 'May 17 2022 16:36:42')

У результаті отримали 'tags/v3.9.13:6de2ca5' — номер збірки, 'May 17 2022 16:36:42' — дата й час.

Гілка або тег з якого була зібрана версія Python

Функція python_branch() дозволяє дізнатися з якої гілки або тегу у репозиторії Cpython зібрана ваша версія мови Python. Щодо пояснення, то код мови Python є доступним у репозиторії і у цього репозиторія є свої гілки та теги.

Cpython — це інтепретатор для мови Python, написаний на мові C, який потрібен для того, щоб виконувати код написаний на мові Python. Інтерпретатор по своїй суті просто перетворює вихідний код на так званий байт-код — це проміжний етап між вихідним та машинним кодом. Потім вже без допомоги інтерпретатора цей байт-код перетворюється на машинний, який виконує процесор і таким чином програма виконується.Гілки — це місця, у яких ведуться різного роду роботи над кодом. Тобто, наприклад, на одній гілці може вестися розробка нової версії, а на інших — підтримка вже існуючих.Теги — це такий знак, що програма вже отримала офіційний реліз. У такому випадку цим знаком позначають конкретну версію коду цієї програми. Тобто, мається на увазі, що ця версія коду — це фінальний код програми.

Задля простоти можна навести цікаву аналогію, щоб зрозуміти суть гілок та тегів. Уявіть, що ви у фруктовому саду збираєте фрукти. Сам сад має доріжку по центру і по сторонам, також рядки з фруктовими деревцями різних сортів справа та зліва. Тобто кожен рядок з якої-небудь сторони — це якийсь інший фрукт.

У такому разі гілками у нас будуть називатися рядки з фруктовими деревцями, адже як і у гілок в репозиторії на кожному рядку росте свій фрукт, тобто на кожному з рядків відбуваються різні процеси. Наприклад, на першому рядку ростуть яблуки, на другому груші, на третьому ще якісь.Тегами у нашій аналогії будуть називатися фрукти, які через доспіваання ми зібрали у кошик. Тобто ми побачили, що вони доспіли — це знак, що їх вже пора збирати.

Ось тепер вже можна подивитися приклад функції у коді:

print(platform.python_branch())
tags/v3.9.13

Отже функція показала, що моя версія мови Python — це офіційна версія мови, яка була зібрана з тегу.

Реалізація мови Python

Завдяки функції python_implementation() ми можемо дізнатися, який інтерпретарор мови Python використовується. Ось приклад:

print(platform.python_implementation())
CPython

Тобто у мене використовується інтепретатор Cpython. До речі, він є найпоширенішим серед усіх інших інтерпретаторів мови Python.

Дані про компілятор

Завдяки platform також можна отримати дані про компілятор, який використовується — цим займається функція python_compiler(). Компілятор — це конкретна програма, яка збирає інтерпретатор Cpython.

Ось приклад цієї функції:

print(platform.python_compiler())
MSC v.1929 64 bit (AMD64)

Версія мови Python

Функція python_version() просто дає визначити версію мови Python. Приклад наведений нижче:

print(platform.python_version())
3.9.13

Тут же й розглянемо також функцію python_version_tuple(), вона робить те саме, що й python_version() тільки результат виводить у формі кортежу. Ось приклад:

print(platform.python_version_tuple())
('3', '9', '13')

Випуск та назва ОС

Можемо дізнатися випуск нашої ОС завдяки realease(). Ось приклад цієї функції у коді:

print(platform.release())
10

Так само є функція system(), яка дає дані конкретно про назву ОС. І знову ж таки, переходимо до прикладу:

print(platform.system())
Windows

Висновок

У цьому матеріалі ми розглянули як функціонал модуля platform, так і з’ясували значення деяких термінів. Сподіваюсь, що ця стаття сподобалася вам! Дякую за увагу!

Статті про вітчизняний бізнес та цікавих людей:

Поділись своїми ідеями в новій публікації.
Ми чекаємо саме на твій довгочит!
Magnifique numérique
Magnifique numérique@nocturnal_reader

Нічний читач

56Довгочити
813Перегляди
18Підписники
Підтримати
На Друкарні з 8 квітня

Більше від автора

  • Список різноманітних бібліотек у Python

    Всіх вітаю! Сьогодні хочу поділитися великим списком бібліотек у Python для різного призначення та потреб:https://github.com/vinta/awesome-pythonТут багато цікавих бібліотек зібрано за сферами їхньго призначення.

    Теми цього довгочиту:

    It
  • Roadmap — ваш путівник до поставлених цілей.

    Сайт Roadmap вміщує у собі багато путівників до великої кількості професій та сфер, у яких доволі чітко описано, що саме потрібно для повноцінного вивчення того чи іншого предмету зацікавленості.

    Теми цього довгочиту:

    It
  • Клас itemgetter() у модулі operator

    Всіх вітаю! У даній статті ми продовжимо тему спеціальних властивостей словників у Python. На цей раз ми поговоримо про модуль operator та його клас itemgetter(), яка дозволяє працювати зі списками та словниками у Python.

    Теми цього довгочиту:

    Програмування

Це також може зацікавити:

  • Будемо робити застосунок для обліку фінансів

    Знайома вам ситуація, коли кошти, які мали бути витрачені на велику покупку якимось чином зникали до моменту цієї самої покупки? Болісний момент, який може стати тригером, що приведе вас до кращого життя. Теоретично. Але щоб це сталося, потрібно якось вести історію витрат.

    Теми цього довгочиту:

    Розробка
  • Вступ до нейромереж: додавання, віднімання та заплутаність

    Вам кортіло дізнатись, як працюють штучні нейромережі❓ Багато читали про це, але відчуваєте, що ваші знання дуже поверхневі❓ А чи знали ви про “заплутаності” в штучних нейромережах, майже як в квантовій механіці❓ Чи хотіли дізнатись, як взагалі бачить світ нейронка❓

    Теми цього довгочиту:

    Нейромережі
  • Що таке пакети в Linux, і чому в Windows не так?

    Коли людина тільки приходить в Linux, вона чує багато незрозумілих їй слів. Одним із таких слів є “Пакети“. І ні, це не ті пакети, в котрих рашиків додому відправляють… кхм. Тому давайте розберемося з пакетами в Linux, розглянемо гарні та не дуже сторони.

    Теми цього довгочиту:

    Linux

Коментарі (0)

Підтримайте автора першим.
Напишіть коментар!

Це також може зацікавити:

  • Будемо робити застосунок для обліку фінансів

    Знайома вам ситуація, коли кошти, які мали бути витрачені на велику покупку якимось чином зникали до моменту цієї самої покупки? Болісний момент, який може стати тригером, що приведе вас до кращого життя. Теоретично. Але щоб це сталося, потрібно якось вести історію витрат.

    Теми цього довгочиту:

    Розробка
  • Вступ до нейромереж: додавання, віднімання та заплутаність

    Вам кортіло дізнатись, як працюють штучні нейромережі❓ Багато читали про це, але відчуваєте, що ваші знання дуже поверхневі❓ А чи знали ви про “заплутаності” в штучних нейромережах, майже як в квантовій механіці❓ Чи хотіли дізнатись, як взагалі бачить світ нейронка❓

    Теми цього довгочиту:

    Нейромережі
  • Що таке пакети в Linux, і чому в Windows не так?

    Коли людина тільки приходить в Linux, вона чує багато незрозумілих їй слів. Одним із таких слів є “Пакети“. І ні, це не ті пакети, в котрих рашиків додому відправляють… кхм. Тому давайте розберемося з пакетами в Linux, розглянемо гарні та не дуже сторони.

    Теми цього довгочиту:

    Linux