Note that genexps are function scopes too and therefore won't see class attributes.

This commit is contained in:
Georg Brandl 2008-01-18 16:42:57 +00:00
parent a26c73ed55
commit a9e073d100
1 changed files with 7 additions and 1 deletions

View File

@ -52,7 +52,13 @@ variable is defined in a block, its scope includes that block. If the
definition occurs in a function block, the scope extends to any blocks contained
within the defining one, unless a contained block introduces a different binding
for the name. The scope of names defined in a class block is limited to the
class block; it does not extend to the code blocks of methods.
class block; it does not extend to the code blocks of methods -- this includes
generator expressions since they are implemented using a function scope. This
means that the following will fail::
class A:
a = 42
b = list(a + i for i in range(10))
.. index:: single: environment