Re: issubclass(C, Mapping) not behaving as expected

2012-05-30 Thread Steven D'Aprano
On Wed, 30 May 2012 00:55:00 -0700, anntzer.lee wrote: > from collections import * > class C(object): > def __iter__(self): pass > def __contains__(self, i): pass > def __len__(self): pass > def __getitem__(self, i): pass > > issubclass(C, Mapping) => False > [issubclass(C, cls) fo

Re: issubclass(C, Mapping) not behaving as expected

2012-05-30 Thread Peter Otten
anntzer@gmail.com wrote: > from collections import * > class C(object): > def __iter__(self): pass > def __contains__(self, i): pass > def __len__(self): pass > def __getitem__(self, i): pass > issubclass(C, Mapping) => False > [issubclass(C, cls) for cls in Mapping.__mro__] =>

issubclass(C, Mapping) not behaving as expected

2012-05-30 Thread anntzer . lee
from collections import * class C(object): def __iter__(self): pass def __contains__(self, i): pass def __len__(self): pass def __getitem__(self, i): pass issubclass(C, Mapping) => False [issubclass(C, cls) for cls in Mapping.__mro__] => [False, True, True, True, True] i.e. C does