Mr.SpOOn <[EMAIL PROTECTED]> writes: > Hi, > I'm trying to create a class which inherit a list to change some behavior. > This list should contain other instance objects and has to manage > these instances in a particular way. > > 1) I need to sort this elements in this list, but they must be sorted > using an instance variable.
I don't understand what this means. > What does Python use to sort elements? I mean, there is a __sort__ > method in the class list or it just uses comparison operators? Comparison operators are always used but you can sort elements according to a key (or you can use a compare function in 2.x). See http://docs.python.org/library/stdtypes.html#mutable-sequence-types > In this case, shall I just redefine this operators in the element > classes? Or sort them according to a key. > 2) I need to have just unique elements. Maybe this is related to first > question (or maybe not). Again, to estabilish the uniqueness of an > element I have to use an instance variable. I think I have to rewrite > both the methods append() and __contains__(), but I'm not sure how. > > For the first one I did: > > def append(self, element): > if element in self: > pass > else: > list.append(self, element) > > It seems right to me, but I have no idea what to do with __contains__() Why do you need to redefine __contains__? If I were you, I wouldn't inherit from list because it seems that your list-like object quite different from a plain list. -- Arnaud -- http://mail.python.org/mailman/listinfo/python-list