of coursewe already know much simpler syntax for constructing an iterator from an iterablefor in iterableprint(ithe quick brown fox jumps over the lazy dog as you can seethe for statementin spite of not looking terribly object-orientedis actually shortcut to some obviously object-oriented design principles keep this in mind as we discuss comprehensionsas theytooappear to be the polar opposite of an object-oriented tool yetthey use the exact same iteration protocol as for loops and are just another kind of shortcut comprehensions comprehensions are simplebut powerfulsyntaxes that allow us to transform or filter an iterable object in as little as one line of code the resultant object can be perfectly normal listsetor dictionaryor it can be generator expression that can be efficiently consumed in one go list comprehensions list comprehensions are one of the most powerful tools in pythonso people tend to think of them as advanced they're not indeedi've taken the liberty of littering previous examples with comprehensions and assuming you' understand them while it' true that advanced programmers use comprehensions lotit' not because they're advancedit' because they're trivialand handle some of the most common operations in software development