How can I count the number of items in an arbitrary iterable (such as a generator)?
Calls to itertools.imap() in Python 2 or map() in Python 3 can be replaced by equivalent generator expressions: sum(1 for dummy in it) This also uses a lazy generator, so it avoids materializing a full list of all iterator elements in memory.