And you probably should add: ... def __init__(self, *args): assert len(args) == len(self.__slots__) ... --T