def invert(oldDict):
    invertedDict = defaultdict(list)
while oldDict:
    key, valuelist = oldDict.popitem()
for value in valuelist:
    invertedDict[value].append(key)
return invertedDict
Инверсия словаря на месте в Python