That&#x27;s kind of what generator expressions are actually :)<p><a href="https:&#x2F;&#x2F;www.python.org&#x2F;dev&#x2F;peps&#x2F;pep-0289&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.python.org&#x2F;dev&#x2F;peps&#x2F;pep-0289&#x2F;</a><p>You can pass them into anything that expects an iterable.  That&#x27;s pretty much the same since iterable types will frequently consume an iterable in their constructor.<p>For example, here&#x27;s a &quot;tuple comprehension&quot; (really just a generator expression passed to a tuple):<p>&gt;&gt;&gt; tuple(x for x in [1, 2, 3])<p>Same thing passed to list and set constructors (which you&#x27;d never do because we have the special comprehension syntax for those:<p>&gt;&gt;&gt; list(x for x in [1, 2, 3])<p>&gt;&gt;&gt; set(x for x in [1, 2, 3])<p>I explained these in a very slightly different way in the linked webinar I linked in the post: <a href="https:&#x2F;&#x2F;youtu.be&#x2F;u-mhKtC1Xh4?t=35m05s" rel="nofollow">https:&#x2F;&#x2F;youtu.be&#x2F;u-mhKtC1Xh4?t=35m05s</a>