Если all_documents
- это набор с новыми элементами, которые вы хотите получить в результате, вам необходимо изменить порядок аргументов в методе difference
.
unique_documents = set([str(i) for i in dict_of_uniques[my_key]])
all_documents = set([str(i) for i in (dict_of_all_docs[my_key])])
all_documents.difference(unique_documents)
Посмотрите, как важен порядок:
>>> x = set([1,2,3])
>>> y = set([3,4,5])
>>> x.difference(y)
{1, 2}
>>> y.difference(x)
{4, 5}
difference
дает вам элементы набора first , которых нет в наборе second .
Если вы хотите увидеть, что было добавлено или удалено, вы можете symmetric_difference
.Эта функция описывается как «симметричная», поскольку она дает одинаковые результаты независимо от порядка аргументов.
>>> x.symmetric_difference(y)
{1, 2, 4, 5}
>>> y.symmetric_difference(x)
{1, 2, 4, 5}