[EMAIL PROTECTED] wrote: > Is there an easy way to grab the Unique elements from a list? > For Example: > data = [0.1,0.5,0.6,0.4,0.1,0.5,0.6,0.9] > > what I am looking for is the unique elements 0.4 and 0.9 with their > index from the list.
This is basically the same as Fredrik Lundh's solution, but here it is anyway: py> def f(lst): ... counts = dicttools.counts(lst) ... return [(i, elem) ... for i, elem in enumerate(lst) ... if counts[elem] == 1] ... py> f([0.1,0.5,0.6,0.4,0.1,0.5,0.6,0.9]) [(3, 0.40000000000000002), (7, 0.90000000000000002)] Where dicttools.counts is defined as: def counts(iterable, key=None): result = {} for item in iterable: # apply key function if necessary if key is None: k = item else: k = key(item) # increment key's count try: result[k] += 1 except KeyError: result[k] = 1 return result (I use this so often that I have a module called dicttools to hold it. You don't actually need the key= argument for your problem, but I just copied the code directly.) STeVe -- http://mail.python.org/mailman/listinfo/python-list