Python has general purpose data types like dict, list, set, tuple. Collections module has following additional useful datatype1. namedtupleUseful to contruct objects2. CounterIt works with string, list, and sentence. Sentence should be split with ' ' to convert into list of words. supposec = Counter(list)then c.values() gives only count. So sum(c.values()) givestotal of all counts c.most_common() sort based on frequency and return list of tuplesc.most_common()[0][0] gives the item with maximum occurancec.most_common()[:-2:-1] gives the item with maximum occurancec.most_common()[:-n-1:-1] gives the item with n least common elements c.substract(d) Here is d is another Counter. The result will be frequency for each element will be substraced as per its frequency in d. 3. defaultdict(object)It gives default empty dictionary. 4. OrderedDictOrderedDict(sorted(d.items(), key=lambda t: t[0])) to sort with keyOrderedDict(sorted(d.items(), key=lambda t: t[1])) to sort with value5. dequeTo add : append(), appendleft()To remove : pop() , popleft()to count: count()To insert as specific index i : insert(i, x)6. ChainMapThis is to join 2 dict as a list with 2 elements as dict