При этом, если у добавляемого элемента ключ соответствует какому-либо из ключей в имеющемся словаре, необходимо добавить элемент в конец списка имеющегося ключа, при этом все эти списки не должны содержать повторяющихся элементов.
Віктор Короп, на такой случай у dict() предусмотрены специальные методы: dic.setdefault('key', []).append('value')
А ещё лучше - использовать collections.defaultdict.