On Wed, 11 Dec 2013 23:25:53 -0800, Robert Voigtländer wrote: > I have a list like this: > > a = [(52, 193), ...... (36, 133)] # iterate over the list of tuples # creates a dictionary n0:[n1a, n1b, n1c ... ] # from tuples (n0,n1a), (n0,n1b), (n0,n1c) ...
b = {} for x in a: if x[0] in b: pass else: b[x[0]] = [] if x[1] not in b[x[0]]: b[x[0]].append( x[1] ) # iterate over the dictionary # create the list of result tuples (n0, n1min, n1max) ..... c = [ (x, min(y), max(y) ) for x,y in b.iteritems() ] print c There may be a more efficient test for whether b[x[0]] eists than trapping keyError. -- Denis McMahon, denismfmcma...@gmail.com -- https://mail.python.org/mailman/listinfo/python-list