Доброго времени суток всем читателям Яндекс.Дзен! В этой статье рассмотрим полезный и интересный счётчик в языке программирования Python. Он позволяет подсчитать количество повторений элементов в последовательности.
Это встроенный модуль в Python, поэтому устанавливать его не нужно.
Сразу приступим к импортированию класса counter()
from collections import Counter
Импортируем только этот класс из модуля collections, так как будем рассматривать только счётчик.
Синтаксис:
c = Counter([итерируемая последовательность или словарь])
А возвращаемое значение: объект Counter
В переменной c мы получаем коллекцию, в которой элементы хранятся в виде ключей как в словаре, а счётчик каждого элемента в виде значений этих элементов.
Пример
В данном примере с помощью Counter() я посчитал количество одинаковых элементов в списке и они по умолчанию отсортировались по частоте повторений.
Атрибуты и методы:
Теперь на полученном результате рассмотрим атрибуты и методы
Counter.elements()
возвращает итератор по элементам
так мы можем получить тот же только уже отсортированный список.
Это можно использовать если в счётчике сразу указать количество повторений определённого элемента
Если указать отрицательное количество элементов, то метод его просто проигнорирует.
Counter.most_common([n])
возвращает список из n наиболее распространённых элементов и их количество отсортированных по количество повторений.
Если n не указано, то метод просто возвращает все элементы в счетчике
Counter.subtract([итерируемая последовательность или словарь])
вычитает значение элементов из текущего счетчика и итерируемой последовательности или словаря, или другого счётчика
Counter.total()
Появился в Python 3.10, он вычисляет сумму значений счётчика.
В более ранних версиях Python этот метод можно заменить таким выражением
Counter.update([итерируемая последовательность или словарь])
Обычный метод словарей, который доступен и для счетчиков. Он складывает элементы текущего счетчика и итерируемой последовательности или словаря, или другого счётчика
Заключение
Этот класс Counter() может применяться во многих ситуациях и может очень упростить разработку программы, например недавно я его использовал для анализа данных, так как в одном столбце в каждой его строке встречались одинаковые элементы, но в разном количестве.
С помощью этого класса у меня получилось подсчитать количество каждого элемента.
На этом всё, спасибо за прочтение статьи, надеюсь она оказалась полезной, можете подписаться на канал и поставить лайк этой статье, не болейте!