[Python-Dev] Small misleadingness in docs

Raymond Hettinger python at rcn.com
Sat Feb 14 02:40:19 CET 2009


[Greg Ewing]
> I've discovered something slightly misleading in the docs
> for PyObject_IsInstance:
>
>   When testing if B is a subclass of A, if A is B, PyObject_IsSubclass
>   returns true. If A and B are different objects, B‘s __bases__
>   attribute is searched...
>
> This suggests that issubclass(A, A) will always be true,
> regardless of what attributes A has. However, this turns
> out not to be so -- A must also have a __bases__ attribute,
> otherwise it's rejected as not being sufficiently class-like.

This smells like a bug that brings issubclass() out of sync with isinstance().
Perhaps issubclass() should do what the docs say and start by
testing whether A and B are the same object.


Raymond 



More information about the Python-Dev mailing list