Duncan Booth a écrit :
Bruno Desthuilliers <bruno.42.desthuilli...@websiteburo.invalid> wrote:

If you don't want to create as many Whatever instances as MyClass instances, you can create a single Whatever instance before defining your class:

DEFAULT_WHATEVER = Whathever()

class MyClass(object):
     def __init__(self, x, y):
         self.x = x
         self.y = y
         self.size = DEFAULT_WHATEVER



Or you could create the default as a class attribute

from the OP:
"""
I have a class (FuncDesigner oofun) that has no attribute "size", but
it is overloaded in __getattr__, so if someone invokes
"myObject.size", it is generated (as another oofun) and connected to
myObject as attribute.
"""

so this solution won't obviously work in this case !-)

Also and FWIW, I wouldn't advocate this solution if the "default" class attribute is of a mutable type.
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to