set.symmetric_difference()
Метод symmetric_difference() возвращает новое множество, содержащее элементы, которые есть только в одном из множеств, но не в обоих сразу. Эквивалент оператора ^.
Сигнатура
set.symmetric_difference(other)
Параметры
other— любое итерируемое.
Возвращаемое значение
Новое множество (set). Исходное не изменяется.
Примеры использования
Пример 1. Базовая симметрическая разность.
a = {1, 2, 3, 4}
b = {3, 4, 5, 6}
print(a.symmetric_difference(b))
{1, 2, 5, 6}
Пример 2. Полностью совпадающие множества.
a = {1, 2, 3}
b = {1, 2, 3}
print(a.symmetric_difference(b))
set()
Пример 3. Полностью разные множества.
a = {1, 2}
b = {3, 4}
print(a.symmetric_difference(b))
{1, 2, 3, 4}
Пример 4. Оператор ``^`` против метода.
a = {"DHT22", "BMP280"}
b = {"BMP280", "MPU6050"}
print(a ^ b)
print(a.symmetric_difference(b))
{'DHT22', 'MPU6050'}
{'DHT22', 'MPU6050'}
Пример 5. Аргумент-список.
yesterday = {"news", "weather", "sport"}
today = ["weather", "sport", "music"]
print(yesterday.symmetric_difference(today))
{'news', 'music'}
См. также
set.symmetric_difference_update() — симметрическая разность на месте
set.difference() — обычная разность
set.union() — объединение
Примечание
Лицензия и источники
Техническое описание метода адаптировано из официальной документации Python (https://docs.python.org), доступной под Python Software Foundation License Version 2. Перевод на русский, примеры использования и пояснения — © AlashEd Wiki.