I know it is rude to reply to myself. But I found the answer and wanted to share it.
I did the following test: >>> class Lala: ... def __eq__(self, other): ... if self.name == other.name: ... return True ... ... def __cmp__(self, other): ... if self.time < other.time: ... return -1 ... elif self.time > other.time: ... return 1 ... else: ... return 0 ... >>> ins0 = Lala() >>> ins0.time = 11 >>> ins0.name = 'myname' >>> >>> >>> ins1 = Lala() >>> ins1.time = 10 >>> ins1.name = 'myname' >>> >>> ins1 == ins0 True >>> >>> ins0<ins1 False >>> ins1<ins0 True >>> >>> #See? They test correctly for greater and lesser than (time) ... #but they test equal as to time. ... >>> #I even tried sort, it works fine. The thing is to use the rich comparison functions. Hugo _______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor