Курс 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. Оператор «моржа» (Walrus Operator)
  2. Списковое включение в Python
  3. Python 3.12: переиспользование кавычек
  4. Функции min(), max(), sum()
  5. Преобразование в float
  6. Генераторные функции в Python
  7. Использование эмодзи в Python
  8. Работа с базами данных SQLite
  9. Символ подчеркивания в Python
  10. Управление асинхронными задачами с помощью Semaphore
  11. Monkey Patching в Python
  12. Группы исключений в Python
  13. Метод ior для битовых операций
  14. Округление дробей в Python
  15. Создание и использование ChainMap
  16. Метод setitem в Python
  17. Переопределение метода __eq__
  18. Многопоточность и асинхронное программирование в Python
  19. Работа с JSON данными в Python
  20. Генератор надежных паролей
  21. Создание и удаление объектов
  22. Вставка переменных в шаблоны Flask
  23. Декодирование байтов в строку
  24. Переменные в Python: сокращение гласных
  25. Атрибуты класса и экземпляра
  26. Переменные в Python
  27. Работа с необработанными строками
  28. Работа с комбинациями в Python.
  29. Описание скриптов в README
  30. Работа со строками в Python
  31. Константы в модуле cmath
  32. Удаление файлов в Python
  33. Форматирование строк с f-строками
  34. Получение списка кортежей из словаря
  35. Метод __float__ в Python
  36. Python Метод sleep() из time
  37. Перегрузка операторов в Python
  38. f-строки в формате строк
  39. Извлечение аудио из видео
  40. Defaultdict в Python
  41. Создание и операции с дробями
  42. Встроенные функции Python
  43. Лямбда-функции в defaultdict
  44. Сложные типы данных в Python
  45. Хранение данных
  46. Разделение строк в Python

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