Thank you guys! (Reinhold, Mark and Markus) I must confess that I am absolutely awe struck at the power of this language! There is no way in the world that I would have envisaged such simple and elegant solutions!!!
Reinhold, is your solution specific to 2.4? Kind Regards, Ric "Reinhold Birkenfeld" <[EMAIL PROTECTED]> wrote in message news:[EMAIL PROTECTED] > Mark Jackson wrote: >> "Ric Da Force" <[EMAIL PROTECTED]> writes: >> >>> It is hard to explain but this is what I mean: >>> >>> Dict = {'rt': 'This is repeated', 'sr': 'This is repeated', 'gf': 'This >>> is >>> not'} >>> >>> I want this to return a new dict with string keys and lists containing >>> the >>> previous keys for repeated values. >>> >>> NewDict = {'This is repeated':['rt','sr'],'This is not':['gf']} >> >> NewDict = {} >> for x in Dict.keys(): >> try: >> NewDict[Dict[x]].append(x) >> except KeyError: >> NewDict[Dict[x]] = [x] > > Or, more up-to-date: > > NewDict = {} > for key, val in Dict.iteritems(): > NewDict.setdefault(val, []).append(key) > > Reinhold -- http://mail.python.org/mailman/listinfo/python-list