nested scopes

Aahz Maruch aahz at
Fri Feb 9 10:40:21 EST 2001

In article <96059d$din$1 at>,
Joshua Marshall  <jmarshal at> wrote:
>Still this is a different issue than lexical scoping.  Consider:
>   class T:
>      def m(self):
>         print self.x
>   T.x = 'foo'
>   T().m()
>Here, T().m() prints "foo".  Lexically, x is not defined in m's scope.
>I believe it was a good decision to require going through self to
>access class/object fields.  

Note that you don't necessarily want to go through self to access class
fields.  Here you're relying on the search through the class hierarchy
to access T.x with self.x.  (I'm pretty sure you know this, but I don't
want any newcomers getting confused.)
                      --- Aahz (Copyright 2001 by aahz at

Androgynous poly kinky vanilla queer het    <*>
Hugs and backrubs -- I break Rule 6

"Actually, I've found that Usenet has helped a lot with my terror of
social stupidity.  Seeing people I really like and respect behave like
idiots in public has been very beneficial."  --Rachael Lininger

More information about the Python-list mailing list