1. Which itertools tool chains multiple iterables without copying?
itertools.chain yields from each iterable in sequence without building a new list. It is ideal for streaming pipelines. accumulate computes running totals. product makes cartesian products. zip_longest pairs uneven inputs with fill values.
from itertools import chain
for x in chain([1,2],[3,4]):
print(x)