Generators are lazy iterators created by generator functions (using yield) or generator expressions (using (an_expression for x in an_iterator)).
yield
(an_expression for x in an_iterator)
<expr>
<var>
<iter>