[Python-Dev] Q: playing with 2.2a1 => strange behaviour, or misunderstanding (original) (raw)

Guido van Rossum guido@python.org
Mon, 20 Aug 2001 09:11:15 -0400


I have tried this with 2.2a1: 1. I have not checked the related C code 2. I have not checked the bug report list

>>> class C(object): pass ... >>> c=C() >>> c.a=3 >>> object.getattr(c,'a') 3 >>> object.setattr(c,'a',6) Traceback (most recent call last): File "", line 1, in ? TypeError: function takes exactly 2 arguments (3 given) Is that meaningful or a problem? I'm trying to understand type/class unification to consider possible jython issues. regards, Samuele Pedroni

This was a 2.2a1 specific problem: in that version, the object class didn't define a setattr dispatch slot, and object.setattr ended up returning a bound method of the object class.

In 2.2a2 this won't be a problem -- the object now defines setattr.

--Guido van Rossum (home page: http://www.python.org/~guido/)