Курс 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. Очистка данных с Pandas
  3. Методы classmethod и staticmethod
  4. Функция zip() в Python
  5. Инверсия списка/строки в Python
  6. Метод ifloordiv для пользовательских классов
  7. Colorama: окрашивание текста в Python
  8. EMOT преобразование эмодзи в текст
  9. Метод __imod__ для Python
  10. Настройка логгера Logzero
  11. Создание класса в Python
  12. Обрезка изображения с Pillow
  13. Bootle — простой веб-фреймворк
  14. Метод Self в Python
  15. Расчет времени выполнения программы
  16. Работа со строками в Python
  17. Работа с YAML в Python: PyYAML.
  18. Работа с географическими данными.
  19. Именованные аргументы в Python
  20. Объединение словарей в Python
  21. Работа с временем в Python
  22. Обработка ошибки IndexError
  23. Обработка исключений в Python
  24. Enum в Python
  25. Python groupby() из itertools: работа с повторяющимися элементами
  26. Добавление элемента к кортежу
  27. Протокол управления контекстом
  28. Объединение списков с помощью zip
  29. Печать месячного календаря
  30. Применение функции к списку
  31. Работа с defaultdictами в Python
  32. Инверсия списка и строки в Python
  33. Аннотации типов в Python
  34. Векторизация в Python с NumPy.
  35. Операторы += в Python
  36. Создание обратного итератора
  37. Функция format() в Python
  38. Распаковка с оператором *
  39. Явный импорт переменных
  40. Декоратор для группы пользователей в Django
  41. Декораторы в Python
  42. Расширение операции побитового «и» в Python
  43. Установка библиотек в Python
  44. Подсчет элементов в Python
  45. Функции map, filter, reduce
  46. Сортировка в Python
  47. Работа с контекст-менеджером «with»
  48. Справка по импортированным модулям

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