Steffen Glückselig wrote: > Are wrap and get_directives somehow built-in? I couldn't find > references to them. > > I've noticed, too, that using __new__ I can manipulate the dictionary > resulting in the behavior I intented. > > I'd rather like to know: Why does it work in __new__ but not in > __init__? > > And, stimulated by your response: Why is using __new__ superior to > __init__?
At short, __new__ is called on the class and must return the instance; that means that the instance isn't created yet. __init__, on the other hand, is called on the instance which is already created at that point. So changing dct in __init__ is pointless, because the instance (which is a class actually) is already created. Reinhold -- http://mail.python.org/mailman/listinfo/python-list