On Wed, Dec 18, 2013 at 5:40 AM, spir <denis.s...@gmail.com> wrote: > C.__setattr__(C, "baz", "BAZ") > which fails, for any reason, with > TypeError: can't apply this __setattr__ to type object
You need __setattr__ from the metaclass: >>> class C: pass ... >>> type(C).__setattr__(C, "baz", "BAZ") >>> C.baz 'BAZ' You can bind the method like this: >>> C_setattr = type(C).__setattr__.__get__(C) >>> C_setattr('foo', 'bar') >>> C.foo 'bar' But just use built-in setattr(), really. _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: https://mail.python.org/mailman/listinfo/tutor