list(map(abs(- ))[ can force real list if needed the zip built-inintroduced in the prior is an iteration context itselfbut also returns an iterable with an iterator that works the same wayz zip(( )( ) zip is the samea one-pass iterator list( [( )( )( )for pair in zprint(pairz zip(( )( )for pair in zprint(pair( ( ( zip(( )( )next( ( next( ( exhausted after one pass iterator used automatically or manually manual iteration (iter(not neededthe filter built-inwhich we met briefly in and will study in the next part of this bookis also analogous it returns items in an iterable for which passed-in function returns true (as we've learnedin python true includes nonempty objectsand bool returns an object' truth value)filter(bool['spam''''ni']list(filter(bool['spam''''ni'])['spam''ni'like most of the tools discussed in this sectionfilter both accepts an iterable to process and returns an iterable to generate results in it can also generally be emulated by extended list comprehension syntax that automatically tests truth values[ for in ['spam''''ni'if bool( )['spam''ni'[ for in ['spam''''ni'if ['spam''ni'new iterables in python