Accessing class-level variables

Bengt Richter bokr at oz.net
Wed Apr 24 13:24:14 EDT 2002


On Wed, 24 Apr 2002 06:04:04 +0200, Gerhard =?iso-8859-15?Q?H=E4ring?= <gh_pythonlist at gmx.de> wrote:

>I'm trying to access a class variable in a derived class. I sincerly
>hope there's a less kludgy way than what I'm currently using:
>
>class X:
>    a = 5
>
>class Y(X):
>    def p(self):
>        print self.__class__.a
>
>Y().p()
>
Unless a is shadowed, seems like this would work,
or am I missing something?

 >>> class X:
 ...     a = 5
 ...
 >>> class Y(X):
 ...     def p(self):
 ...         print self.a
 ...
 >>> Y().p()
 5
 >>> import sys; sys.version
 '2.2 (#28, Dec 21 2001, 12:21:22) [MSC 32 bit (Intel)]'

Regards,
Bengt Richter



More information about the Python-list mailing list