[Python-Dev] Need a way to test for 8-bit-or-unicode-string (original) (raw)

Guido van Rossum guido@python.org
Fri, 05 Oct 2001 12:50:48 -0400


> *** 1805,1810 **** > --- 1805,1829 ---- > else if (PyTypeCheck(cls)) { > retval = PyObjectTypeCheck(inst, (PyTypeObject *)cls); > } > + else if (PySequenceCheck(cls)) { > + int i, n;

Is is possible that a type also passes PySequenceCheck? If so, that could lead to confusing behavior.

The only way a type could pass PySequence_Check is if someone subclasses 'type' and adds a getitem method. In that case, it's appropriate that PyType_Check() has prevalence. Also, adding getitem to a type seems to serve no purpose, so I'm not worried about this (and yes, I had thought about this :-).

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