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

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

Суть itemgetter()

У модулі operator клас itemgetter() призначений для обрання елементів із ітерованих типів даниих. Варто всього лиш викликати його та передати потрібний елемент (або елементи) і ми отримаємо його.

До речі, варто також надати увагу й тому факту, що itemgetter() є не функцією, а саме класом.

Робота функції itemgetter()

Для початку роботи нам варто імпортувати модуль operator. Даний модуль є вбудованим, тому втсановлювати його потреби немає:

import operator

Приклад роботи зі списками

Почнемо з того, як можна використовувати клас itemgetter() зі списками. Наприклад, ми можемо обирати більше елементів зі списку, ніж коли вибираємо елемент звичайним способом.

Ось приклад, де ми беремо одразу три елементи зі списку:

english_football_clubs = ["Arsenal", "Chelsea", "Man City", "Brighton"]
get_elements = operator.itemgetter(0, 1, 3)

print(get_elements(english_football_clubs))
('Arsenal', 'Chelsea', 'Brighton')

Якраз у останньому рядку ми й можемо помітити, що маємо справу з класом, бо саме там ми записуємо змінну get_elements та надаємо їх список у дужках. По суті, get_elements — це екземпляр класу itemgetter().

Також можна застосовувати дану функцію для сортування списків. Для цього варто всього лиш передати функції sorted() змінну із результатом itemgetter() у параметр key. Таким чином, ми можемо легко й просто сорутвати елементи за один або більше елементами.

Ось приклад, де ми маємо список, що містить кортежі із назвою хімічного елементу, електронегативністю та атомною масою. Не переживайте, розбиратися у суті цих визначень сенсу для нас немає, але це буде хорошим прикладом сортування списків за допомогою itemgetter().

chemical_elements = [("H", 2.20, 1.008), ("Na", 0.93, 22.98976928), ("Mg", 1.31, 24.305), ("Li", 0.98, 6.94)]

get_elements = operator.itemgetter(2)
sort_elements = sorted(chemical_elements, key=get_elements)
print(sort_elements)

У цьому коді ми сортуємо список за кожним другим елементом у кортежах, тобто ми сортуємо список за значеннями атамної маси у кортежах.

[('H', 2.2, 1.008), ('Li', 0.98, 6.94), ('Na', 0.93, 22.98976928), ('Mg', 1.31, 24.305)]

Тепер сортуємо за першим елементом у кортежах (тобто за електронегативністю):

chemical_elements = [("H", 2.20, 1.008), ("Na", 0.93, 22.98976928), ("Mg", 1.31, 24.305), ("Li", 0.98, 6.94)]

get_elements = operator.itemgetter(1)
sort_elements = sorted(chemical_elements, key=get_elements)
print(sort_elements)
[('Na', 0.93, 22.98976928), ('Li', 0.98, 6.94), ('Mg', 1.31, 24.305), ('H', 2.2, 1.008)]

Приклади роботи зі словниками

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

Ось приклад коду, де ми взяли три значення за ключами:

import operator

tasks = {"Monday": "Training",
         "Tuesday": "Chess learning",
         "Wednesday": "Studying",
         "Thursday": "Go on the concert",
         "Friday": "Football game",
         "Saturday": "Room cleaning",
         "Sunday": "Go to park"}

get_values = operator.itemgetter("Sunday", "Saturday", "Friday")
print(get_values(tasks))
('Go to park', 'Room cleaning', 'Football game')

Таким чином, ми можемо брати більше одного значення зі словника. Як бачимо, у даному випадку ми взяли одразу три значення за ключами.

Висновок

У рамках даної статті ми навчилися працювати із класом itemgetter(), використовуючи різні типи даних. Крім того, ми розглянули те, чим є itemgetter() та приділили увагу синтаксичній особливості використання.
Всім дякую за увагу!

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

  • Бронеплівка для вікон: коли вона доречна та як обрати рішення

    Як бронеплівка утримує уламки, де її встановлюють та чому перед монтажем важливо оцінити стан і конструкцію скління.

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

    Бронеплівка На Вікна
  • Шлейф сучасного смартфону та його призначення

    Шлейф - це тонка пластикова стрічка з ледь видимими доріжками і саме вона зʼєднує важливі компоненти мобільного, без яких він не запрацює. Власники пристроїв Xiaomi, які стикаються з потребою заміни цієї деталі, можуть підібрати відповідний варіант на сайті AKS.UA

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

    Шлейф Для Мобільного
  • Чохли для iPhone 15: повний гід по кольорах, матеріалах і виробниках

    Перед тим як вибрати чохли для iPhone 15, варто визначитися, що саме ви хочете отримати від аксесуара. Комусь потрібен тонкий прозорий корпус, інший покупець шукає посилений захист, а для когось вирішальним стане колір або підтримка MagSafe

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

    Чохли Для Iphone
  • Як побудована програма Meest China Academy

    Курс про товарний бізнес охоплює різні етапи роботи: від пошуку ідеї до перевірки товару, логістики та масштабування. Програма Meest China Academy містить 17 модулів, які послідовно розкривають ці теми без зведення всього навчання до однієї універсальної поради.

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

    Meest
  • Які технології використані в Айфон 17

    Айфон 17 поєднує OLED-дисплей із частотою до 120 Гц, чип A19, дві камери Fusion 48 Мп і швидке заряджання через USB-C. У COMFY можна купити Айфон 17 з накопичувачем на 256 або 512 ГБ, вибравши конфігурацію відповідно до обсягу фото, відео та застосунків

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

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

Прекрасний цифровий світ

94Довгочити
2KПерегляди
27Підписники
Підтримати
На Друкарні з 14 липня 2025

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

  • Оновлення проєкту Magnifique numérique

    Відтепер Magnifique numérique — це не лише про статті з програмування, а й новини про IT та технології. Це означає, що відтепер контент стане різноманітнішим.

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

    Оновлення
  • Метод zfill() у Python

    У цій статті ми розберемо метод zfill() у Python на основі практичних прикладів його використання.

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

    It
  • Команда WHERE у SQL

    Сьогодні ми розглянемо команду WHERE та принцип роботи цієї команди.

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

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

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

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

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

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