In the vast landscape of Python’s standard library, there’s a
hidden gem that can significantly simplify the task of
counting occurrences within an iterable. Say hello to the
collections.Counter class,
a versatile tool that effortlessly tallies the frequency of
elements in your data. In this brief blog article, we’ll take
a closer look at how you can harness the power of
collections.Counter to
elegantly count the occurrences of characters in a string.
Anagrams are strings that have the same letters but in a
different order for example
abc,
bca,
cab,
acb,
bac are all anagrams, since
they all contain the same letters.
We can check whether two strings are anagrams in Python in
different ways. One way to do that would be to use
Counter from the
collections module.
A Counter is a dict subclass for counting hashable objects. It is a collection where elements are stored as dictionary keys and their counts are stored as dictionary values. Counts are allowed to be any integer value including zero or negative counts. The Counter class is similar to bags or multisets in other languages.
In plain English, with
Counter, we can get a
dictionary that represents the frequency of elements in a
list. Let us see this in an example: