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