Курс 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. Генератор списка с условием if
  2. Преобразование чисел в Python
  3. Цикл for в Python
  4. Работа с модулем bisect
  5. Эффективная конкатенация строк в Python
  6. Работа с комплексными числами в Python
  7. Конкатенация списков в Python
  8. Работа с кортежами в Python
  9. Создание комплексных чисел
  10. Функция zip() для объединения списков
  11. Проверка класса объекта
  12. Возвращение нескольких значений
  13. Оператор деления для класса Rational
  14. Классы данных в Python
  15. Декоратор проверки активности
  16. Преобразование чисел в восьмеричную строку
  17. Поиск индекса элемента
  18. Progress с библиотекой tqdm
  19. Преобразование букв в нижний регистр
  20. Работа с collections в Python
  21. Установка пакета в Python
  22. Работа с индексами списков
  23. Метод setitem в Python
  24. Замена символов в строке
  25. Проекты на Python
  26. Рекурсия для обращения строки
  27. Переопределение метода __pow__
  28. Работа с zip-архивами в Python
  29. Python: динамическая типизация и проверка типов
  30. Регистрация на TenChat
  31. Проверка наличия элемента в списке
  32. Работа с файлами в Python
  33. Применение функции к элементам списка
  34. Проверка условий в Python
  35. Умножение строк и списков
  36. Оператор «and» в Python
  37. Проблема с изменяемыми аргументами
  38. Работа с collections в Python.
  39. Группировка элементов в словарь
  40. Структурирование именованных констант
  41. Лямбда-функции в Python
  42. Нарезка списков в Python
  43. Мониторинг памяти с Pympler
  44. EMOT преобразование эмодзи в текст

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