[Python-Dev] [872326] generator expression implementation

Armin Rigo arigo at tunes.org
Mon Jan 12 05:58:43 EST 2004


Hello,

Sorry to bring this out again, I didn't find a reference about the following 
issue in generator expressions:

  (for x in expr)

When should 'expr' be evaluated?  A priori, one would expect it to be 
evaluated immediately, but it is not what the suggested implementation does:

def __gen():
  for x in expr:
    yield x
__gen()

This only computes expr when the first element of the generator is needed (so
it may even never be computed).  Is it done purposefully?  It may also be
surprising to see the anonymous generator in tracebacks if an exception is
raised within expr.


A bientot,

Armin.




More information about the Python-Dev mailing list