On Mon, 23 Feb 2009 08:02:17 -0200, Gabriel Genellina wrote: > En Mon, 23 Feb 2009 07:40:47 -0200, Kless <jonas....@googlemail.com> > escribió: > >> How to access from a class variable to one that is initialized on the >> constructor? >> -------------- >> class Foo(): >> foo = bar # I want to access *from here* to variables created on >> the constructor. >> >> def __init__(self, bar_init): >> self.bar = bar_init >> -------------- > > Unless I misunderstand you, you can't do that. Class variables are > shared by all instances and don't depend on a particular instance - they > exist even *before* any instance is created.
Please don't use the term "class variables" to mean class *attributes*, it makes my brain hurt. If a string variable is a string, and an int variable is an int, and a bool variable is a bool, a class variable should be a class. What you can do is shift the creation of the class attribute to the constructor, instead of when the class is created: class Spam(): def __init__(self, bar_init): self.__class__.foo = bar_init But I'm not sure why you would want to. -- Steven -- http://mail.python.org/mailman/listinfo/python-list