Incorrect scope of list comprehension variables

Steve Howell showell30 at
Sun Apr 4 02:30:32 EDT 2010

On Apr 3, 9:58 pm, Tim Roberts <t... at> wrote:
> Alain Ketterlin <al... at> wrote:
> >I've just spent a few hours debugging code similar to this:
> >d = dict()
> >for r in [1,2,3]:
> >    d[r] = [r for r in [4,5,6]]
> >print d
> Yes, this has been fixed in later revisions, but I'm curious to know what
> led you to believe that a list comprehension created a new scope.  I don't
> that was ever promised.

Common sense about how programming languages should work?  As
confirmed by later revisions?

More information about the Python-list mailing list