Курс 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. Оптимизация поиска в словарях
  2. Запрос пароля с помощью getpass
  3. Метод setitem в Python
  4. Работа с YAML в Python: PyYAML.
  5. Лямбда-функции в Python
  6. Метод ior для битовых операций
  7. Деление в Python
  8. Область видимости переменных
  9. Декораторы для регистрации функций
  10. Изучение объектов с помощью dir()
  11. Выражения-генераторы в Python
  12. Логирование в Python
  13. Перевод текста с Python Translator
  14. Обработка исключений в Python
  15. Преобразование текста в речь с Python
  16. Преобразование в float
  17. Создание списков в Python
  18. Сортировка HTML-элементов
  19. Профилирование данных с Pandas.
  20. Проблема сравнения словарей
  21. Асинхронное выполнение задач в процессах
  22. Объединение кортежей в Python
  23. Динамическая типизация в Python
  24. Оператор деления для класса Rational
  25. Замена подстроки
  26. Именованные срезы в Python
  27. split() без разделителя
  28. Перевод двоичного кода в целое число
  29. Преобразование типов данных в set comprehension
  30. Поиск индекса элемента
  31. Python Enum Weekday Usage
  32. Работа с итераторами в Python
  33. Сумма элементов списка
  34. Удаление элемента по индексу
  35. Отрицательные индексы списков
  36. Безопасные SQL-запросы в Python 3.11
  37. Экспорт данных с помощью writefile
  38. Определение локальных переменных в Python
  39. Создание объекта времени
  40. Структуры данных в Python
  41. Настройка Cron
  42. Создание таблиц в Python с PrettyTable
  43. Python Метод sleep() из time
  44. Создание namedtuple списком полей
  45. Поиск индекса элемента в списке
  46. Логирование в Python
  47. Работа с модулем random

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