Search code examples
pythoncollectionsclass-namespython-collections

Why is collections.Counter uppercase and collections.defaultdict is not?


Some of the elements in the collections module seem to be uppercase, some other not. Is there a specific rationale behind it?


Solution

  • According to this reddit comment

    All classes written in python are upper camel case.

    All types based on C code are lower. [like the primitives]

    namedtuple is a function, thus follows the naming convention of functions. deque and defaultdict are types, (C); Counter and OrderedDict are classes, (Python).