>>> my_dict_reverse={} >>> my_dict={'key_1':1,'key_2':2,'key_3':1} >>> for x in my_dict.items(): ... if my_dict_reverse.has_key(x[1]): ... my_dict_reverse[x[1]].append(x[0]) ... else: ... my_dict_reverse[x[1]]=[x[0]] ... >>> print my_dict_reverse {1: ['key_1', 'key_3'], 2: ['key_2']} >>>