Intermediate·7 min·intermediate · data structures
Counter, defaultdict, namedtuple
Counter, defaultdict, namedtuple
The collections module saves you boilerplate.
Counter
A dict subclass that counts hashable items. .most_common(n) is the killer feature.
defaultdict
A dict where missing keys auto-create a default value. defaultdict(list) is the cleanest way to group things.
namedtuple
A tuple with named fields. Tiny, fast, and lets you write p.x instead of p[0]. Modern alternative: dataclasses.dataclass (we'll meet it later).
Try it
- Use
Counterto find the 3 most-common letters in"abracadabra". - Use
defaultdict(int)to count votes from["a","b","a","c","b","a"].