(original) (raw)
On 23 November 2017 at 09:15, Greg Ewing <greg.ewing@canterbury.ac.nz> wrote:
Ivan Levkivskyi wrote:
On 23 November 2017 at 05:44, Greg Ewing <greg.ewing@canterbury.ac.nz greg.ewing@canterbury.ac.nz>> wrote:
def g():
return ((yield i) for i in range(10))
I think this code should be just equivalent to this code
def g():
temp = \[(yield i) for i in range(10)\]
return (v for v in temp)
But then you get a non-lazy iterable, which defeats the
purpose of using a generator expression -- you might as
well have used a comprehension to begin with.
This could be just a semantic equivalence (mental model), not how it should be internally implemented.
--
Ivan