 <p>If I understand your question rightly, it's fairly straightforward.</p> <p>First, 'flatten' the list using a generator expression: <code>(item for sublist in combs for item in sublist)</code>.</p> <p>Then, iterate over the flattened list. For each item, you either add an entry to the dict (if it doesn't already exist), or add one to the value.</p> <pre><code>d = {} for key in (item for sublist in combs for item in sublist): try: d[key] += 1 except KeyError: # I'm not certain that KeyError is the right one, you might get TypeError. You should check this d[key] = 1 </code></pre> <p>This technique assumes all the elements of the sublists are hashable and can be used as keys.</p>