from __future__ import print_function import collections class sortedlist(collections.Sequence): def __init__(self, v): self.add(v) def add(self, value): pass def __len__(self): pass def __getitem__(self, index): pass class sortedset(sortedlist): def add(self, value): sortedlist.add(self, value) def leak(): class T(sortedset): pass T(1) import sys, gc for i in range(10): leak() gc.collect() print(len(gc.get_objects()))