Курс 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. Codecademy в Telegram
  2. Копирование списков в Python
  3. Метод __complex__ в Python
  4. Создание и операции с дробями
  5. Распаковка с оператором *
  6. Именованные кортежи в Python
  7. Оператор объединения словарей
  8. Гибкие функции Python
  9. Работа с каталогами в Python
  10. Инициализация объекта
  11. Путь к интерпретатору Python
  12. Каналы Senior: Python, Java, Frontend, SQL, C++
  13. Тип данных TypeVarTuple
  14. SciPy: широкий функционал для математических операций
  15. Работа с изменяемыми коллекциями
  16. Генераторы данных
  17. Методы работы со списками
  18. Применение функции map() в Python
  19. Метод hash в Python
  20. Установка виртуального окружения Python
  21. Метод split() в Python
  22. Перегрузка операторов в Python
  23. Метод join() с набором
  24. Pretty-printing JSON в Python
  25. Виртуальное окружение Python
  26. Списки: объединение, изменение
  27. Функция pow() — возвести число в степень
  28. Создание коллекций из выражения-генератора
  29. Нан-рефлексивность в Python
  30. Работа с Requests для HTTP-запросов
  31. Структура строк в Python
  32. Преобразование списка в словарь через генератор
  33. История Python
  34. Создание словаря через dict comprehension
  35. Преобразование символов с помощью map
  36. Работа с изображениями Pillow
  37. Python: изменяемые и неизменяемые коллекции
  38. Закрытие файла в Python
  39. Оператор морж в Python 3.8
  40. Профилирование кода
  41. Инициализация переменных
  42. Мощь вложенных функций в Python
  43. Удаление ключей из словаря
  44. Python-dateutil — работа с датами
  45. Асинхронное программирование с asyncio
  46. Оптимизация создания строк

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