Implementing Counters

The Counter collection is another dictionary-like object that counts hashable objects. Like dictionaries, Counters are unordered mappings of elements (stored as keys) and their respective quantities (stored as values). Value counts are stored as integer values, but can be any value, including zero and negative numbers.

Technically, Counter is a subclass of the dictionary class, so it has access to all the traditional dictionary methods. In addition, it has the following special methods available to it:

  • elements(): It returns an iterator object over the key elements, repeating each key until its quantity value is reached. Elements are printed in random order and, if an element's count is less than one, it will not be printed.

  • most_common([n]): It returns a list of the most common elements and their counts from most common to least. If n is provided, only that number of elements are returned, otherwise all elements are returned.

  • subtract([iterable or mapping]): It subtracts the number elements in the provided argument from another iterable or mapping. Both inputs and outputs can be less than one.

  • fromkeys(iterable): This method, common to normal dictionaries, is not available to Counter objects.

  • update([iterable or mapping]): Elements are added to an existing iterable or mapping. When adding to an iterable, just the sequence of elements is expected, rather than key:value pairs.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset