Gerrit wrote: > Isn't this just modifying A.__dict__, where __getattribute__ looks into > to see whether something is defined? Or is that the same thing? Correct. However, to the user, this should be an implementation detail, and is nearly indistinguishable from >>> A.__name__="B" >>> A <class '__main__.B'> Regards, Martin