Does this listcomp give the right result? dict([(v, k) for k, vs in original.iteritems() for v in vs]) Jeff