Skip to main content

collections - Specialized Container Datatypes

The collections module implements specialized container datatypes providing alternatives to Python's general purpose built-in containers like dict, list, set, and tuple.

🔍 Container Types

Core Containers

  • Counter - Dict subclass for counting hashable objects
  • defaultdict - Dict subclass with factory function for missing values
  • deque - List-like container with fast appends/pops from both ends
  • namedtuple - Factory function for tuple subclasses with named fields

Advanced Containers

  • OrderedDict - Dict subclass that remembers insertion order
  • ChainMap - Dict-like class for creating a single view of multiple mappings

User-Defined Containers

  • UserDict - Wrapper around dict for easier subclassing
  • UserList - Wrapper around list for easier subclassing
  • UserString - Wrapper around string for easier subclassing

Abstract Base Classes

  • abc - Abstract base classes for containers

🚀 Quick Reference

TypeUse CaseKey Methods
CounterCounting itemsmost_common(), elements()
defaultdictAvoiding KeyErrorAutomatic missing value creation
dequeFast queue operationsappendleft(), popleft()
namedtupleStructured dataAccess by name and index
OrderedDictOrder preservationOrdered iteration (less needed in Python 3.7+)
ChainMapMultiple dictsSingle view of multiple mappings