Курс 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. Работа с модулем random
  2. Участие в сообществе @selectel
  3. Списковое включение в Python
  4. Объединение списков с помощью zip
  5. Работа со слайсами
  6. Работа со словарями
  7. Декораторы в Python
  8. Перезагрузка оператора в Python
  9. Функция enumerate в Python
  10. Метод ne для сравнения объектов
  11. Динамическая типизация в Python
  12. Удаление элементов из списка в Python
  13. Удаление ключа из словаря
  14. PEP-401: оператор
  15. Поиск уникальных и повторяющихся элементов
  16. Замена переменных в Python
  17. Вакансии в Nebius
  18. Блок try-except-else
  19. Работа с географическими данными.
  20. Порядок и длина множеств в Python
  21. Объединение списков в Python.
  22. Метаклассы в Python
  23. Простой калькулятор Python
  24. Работа со строками в Python
  25. Мощь вложенных функций в Python
  26. Функции высшего порядка в Python
  27. Использование обратной косой черты в f-строках
  28. Подсказки при вводе данных в Python
  29. Декоратор total_ordering для класса Point
  30. Избегайте пустого списка
  31. Повторение элементов списков
  32. Различия символов в Python
  33. Копирование словарей и списков в Python
  34. Пропуск строк в файле с itertools
  35. Декораторы с @wraps
  36. Преобразование в float
  37. Использование функции product
  38. Присвоение значений переменным в Python
  39. Модуль functools в Python
  40. Объединение списков в строку
  41. Проблемы с dict в Python
  42. Принципы Zen Python
  43. Возврат нескольких значений
  44. Работа с итераторами через срезы
  45. Методы classmethod и staticmethod
  46. Работа с модулем os в Python

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