Курс 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"
- Codecademy в Telegram
- Копирование списков в Python
- Метод __complex__ в Python
- Создание и операции с дробями
- Распаковка с оператором *
- Именованные кортежи в Python
- Оператор объединения словарей
- Гибкие функции Python
- Работа с каталогами в Python
- Инициализация объекта
- Путь к интерпретатору Python
- Каналы Senior: Python, Java, Frontend, SQL, C++
- Тип данных TypeVarTuple
- SciPy: широкий функционал для математических операций
- Работа с изменяемыми коллекциями
- Генераторы данных
- Методы работы со списками
- Применение функции map() в Python
- Метод hash в Python
- Установка виртуального окружения Python
- Метод split() в Python
- Перегрузка операторов в Python
- Метод join() с набором
- Pretty-printing JSON в Python
- Виртуальное окружение Python
- Списки: объединение, изменение
- Функция pow() — возвести число в степень
- Создание коллекций из выражения-генератора
- Нан-рефлексивность в Python
- Работа с Requests для HTTP-запросов
- Структура строк в Python
- Преобразование списка в словарь через генератор
- История Python
- Создание словаря через dict comprehension
- Преобразование символов с помощью map
- Работа с изображениями Pillow
- Python: изменяемые и неизменяемые коллекции
- Закрытие файла в Python
- Оператор морж в Python 3.8
- Профилирование кода
- Инициализация переменных
- Мощь вложенных функций в Python
- Удаление ключей из словаря
- Python-dateutil — работа с датами
- Асинхронное программирование с asyncio
- Оптимизация создания строк















