+ 1
generator function in python
>>> g = (2**x for x in range(100)) >>> next(g) 1 >>> next(g) 2 >>> next(g) 4 >>> next(g) 8 >>> next(g) 16 I had came across this example of generator function.How this can be a generator function,it doesn't have yield keyword. How is this functioning ?
1 Answer
+ 11
It's a generator expression. Basically a list comprehension with () instead of []. It doesn't need a yield statement just like a lambda doesn't need a "return"