Ответ 1
Вы ищете симметричную разницу; все элементы, которые появляются только в наборе a или в наборе b, но не оба:
a.symmetric_difference(b)
Из документа set.symmetric_difference()
:
Возвращает новый набор с элементами в наборе или другом, но не в обоих.
Вы также можете использовать оператор ^
, если оба a
и b
являются наборами:
a ^ b
while set.symmetric_difference()
принимает любой итерабель для другого аргумента.
Вывод эквивалентен (a | b) - (a & b)
, объединение обоих множеств минус пересечение обоих множеств.