Odd closure issue for generators

Lawrence D'Oliveiro ldo at geek-central.gen.new_zealand
Fri Jun 5 02:53:51 EDT 2009


In message <mailman.1133.1244152009.8015.python-list at python.org>, Brian 
Quinlan wrote:

>    >>> c = (lambda : i for i in range(11, 16))
>    >>> d = list(c)
>    >>> for q in d:
>    ... 	print(q())
>    ...
>    15
>    15
>    15
>    15
>    15

Try

    >>> c = ((lambda i : lambda : i)(i) for i in range(11, 16))
    >>> d = list(c)
    >>> for q in d :
    ...     print q()
    ...
    11
    12
    13
    14
    15





More information about the Python-list mailing list