Курс Python → Работа с collections в Python.

Для работы со специальными типами данных в Python можно использовать модуль collections, который предоставляет удобные инструменты для работы с контейнерами. Например, defaultdict позволяет создавать словари с дефолтным значением для ключей, что упрощает работу с отсутствующими ключами. Counter, в свою очередь, предоставляет удобный способ подсчета элементов в итерируемом объекте.

Давайте рассмотрим пример использования модуля collections. Допустим, у нас есть список слов words, и нам нужно подсчитать количество вхождений каждого слова в этом списке. Мы можем создать объект defaultdict с типом int, чтобы автоматически увеличивать значение для каждого нового слова. После этого мы можем пройтись по списку слов и увеличивать значение в словаре word_counts для каждого слова.


from collections import defaultdict

words = ['apple', 'banana', 'apple', 'orange', 'banana']
word_counts = defaultdict(int)

for word in words:
    word_counts[word] += 1

print(word_counts)

Теперь давайте рассмотрим другой пример использования модуля collections. Предположим, у нас есть строка ‘banana’, и мы хотим подсчитать количество вхождений каждого символа в этой строке. Для этого мы можем использовать класс Counter, который автоматически создаст словарь с количеством вхождений каждого символа.


from collections import Counter

sentence = 'banana'
letter_counts = Counter(sentence)

print(letter_counts)

Таким образом, модуль collections предоставляет удобные инструменты для работы со специальными типами данных в Python. Благодаря defaultdict и Counter можно эффективно решать задачи по подсчету элементов и управлению словарями. Используя эти инструменты, разработчики могут упростить и оптимизировать свой код, делая его более читаемым и эффективным.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Оператор del в Python
  2. Метод init в Python
  3. Списковые включения в Python
  4. Combobox в Tkinter
  5. Однострочники Python
  6. Переворот строки
  7. Создание Radio кнопок в tkinter
  8. Введение в PyTorch
  9. Вложенные функции в Python
  10. Antigravity модуль
  11. Декораторы в Python
  12. Работа с getopt
  13. Удаление специальных символов
  14. Работа с *args и **kwargs в Python
  15. Именование переменных в Python
  16. Транспонирование 2D-массива с помощью zip
  17. Counter() — подсчет элементов
  18. Деление в Python
  19. 9 уловок для чистого кода
  20. Пропуск начальных строк с помощью dropwhile()
  21. Протокол управления контекстом
  22. Выключение компьютера с помощью Python
  23. Профилирование с Pandas
  24. Работа с модулем bisect
  25. Метод get() в Python
  26. Контроль точности вывода чисел
  27. Форматирование данных с помощью pprint
  28. Вызов внешних программ в Python с помощью sh
  29. Лямбда-функции в Python
  30. Множественные конструкторы в Python
  31. Участие в LP стейкинге Waves
  32. Повторение и перенос строки
  33. Функция count() в Python
  34. Работа с файловой системой в Python
  35. Управление мышью и клавиатурой с Pyautogui
  36. Каналы Senior: Python, Java, Frontend, SQL, C++
  37. Копирование файлов с shutil()
  38. Курс по дообучению ChatGPT
  39. Метод join() для объединения элементов строки
  40. Гибкие функции Python
  41. Метод __imod__ для Python
  42. Функция reduce() в Python
  43. Экранирование символов в Python
  44. Оператор «моржа» (Walrus Operator)
  45. Печать календаря
  46. Синтаксис переменных цикла в Python
  47. Преобразование генераторов в циклы

Marketello читают маркетологи из крутых компаний