Курс 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. Метод ifloordiv для пользовательских классов
  3. Разделение строки в Python
  4. OrderedDict — упорядоченный словарь
  5. Модуль functools в Python
  6. Генераторы списков
  7. Проверка класса объекта
  8. Создание Radio кнопок в tkinter
  9. Numpy: объединение массивов
  10. Работа с комплексными числами
  11. Назначение максимального и минимального значения переменной в Python.
  12. Взаимодействие с внешними процессами в Python
  13. Определение наиболее частого элемента с помощью collections.Counter
  14. Методы обработки строк в Python
  15. Создание функций высшего порядка
  16. Функция count() в Python
  17. Красивый вывод списка
  18. Фильтрация списка от «ложных» значений
  19. Расширение операции побитового «и» в Python
  20. Измерение потребления памяти при сортировке
  21. Наследование в программировании
  22. Управление асинхронными задачами на Python.
  23. Оптимизация памяти с slots
  24. Различия символов в Python
  25. Сохранение Unicode в JSON
  26. Конструктор в Python
  27. Копирование словарей и списков в Python
  28. Создание и операции с дробями
  29. Преобразование многоуровневого словаря
  30. Библиотека itertools: объединение списков
  31. Генераторы словарей и множеств
  32. Регистрация на хакатоне
  33. Форматирование данных с помощью pprint
  34. Лямбда-функции в Python
  35. Работа с пакетами
  36. Методы работы со строками в Python
  37. Работа с областями видимости переменных
  38. Измерение времени выполнения кода
  39. Умножение строк и списков
  40. Оператор морж в Python 3.8
  41. Визуализация пропусков данных
  42. Пустой оператор pass в Python
  43. Метод join() для объединения элементов строки
  44. Символ подчеркивания в Python
  45. Оператор объединения словарей

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