Курс 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. Генераторы в Python
  2. Метод join() для объединения элементов
  3. Работа с Enum в Python3.
  4. f-строки в формате строк
  5. Оператор Walrus в Python
  6. Работа с пакетами
  7. Оптимизация поиска в словарях
  8. Работа со списками
  9. Метод setdefault() в Python
  10. Копирование в Python
  11. Создание списков в Python
  12. Обход элементов в Python
  13. Замыкания в Python
  14. Очистка данных с Pandas
  15. Работа с модулем bisect
  16. Модуль os в Python: работа с файлами
  17. Тест скорости набора текста на Python
  18. Преобразование строк в числа в Python
  19. Распаковка элементов последовательности
  20. Распаковка аргументов в Python
  21. Конкатенация строк в Python
  22. Просмотр внешнего файла в Python
  23. Mad Libs Generator
  24. Цикл for в Python
  25. Создание графиков в терминале
  26. Динамическая типизация в Python
  27. Метод rmatmul для пользовательских матриц
  28. Модуль Antigravity в Python 3
  29. Управление User-Agent в Python
  30. Генераторные функции в Python
  31. Лямбда-функции в Python
  32. Пропуск строк в файле с itertools
  33. Создание словаря с значением по умолчанию
  34. Атрибуты класса и экземпляра
  35. Работа с атрибутом dict
  36. Работа с f-строками 2.0
  37. Метод join() для объединения элементов строки
  38. Методы __repr__ и __str__ в Python
  39. Основы Python за 14 дней
  40. Импорт модулей в Python 3.12
  41. Разделение строки в Python
  42. Частичное совпадение пользовательского ввода в Python 3.10
  43. Функция enumerate() в Python
  44. Создание и удаление объектов
  45. Работа с модулем Calendar

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