Kless a écrit :
Why can not to access from a class attribute to a function of that
class?
-----------------
class Foo(object):
attr = __class__.__name__
attr = self.__class__.__name__
-----------------
"class" is an executable statement that instanciate a new class object
and bind it to the class name in the current namespace. The class object
doesn't yet exists when the body of the class statement is eval'd, so
you can't access it, obviously - nor any of it's instances FWIW.
Also, there's nothing magical wrt/ 'self' - it's just a naming
convention for the "current instance" argument of functions that are
intented to be used as methods (Python's 'methods' being just thin
wrappers around the function, the class and the instance).
If you want to mess with the class attributes, you can either do so
after the class is created (that is, after the end of the class
statement's body), or use a custom metaclass.
--
http://mail.python.org/mailman/listinfo/python-list