set.symmetric_difference_update()

Метод symmetric_difference_update() модифицирует множество так, чтобы оно содержало только те элементы, которые присутствуют либо в нём, либо в переданном итерируемом, но не одновременно. Эквивалент оператора ^=.

Сигнатура

set.symmetric_difference_update(other)

Параметры

  • other — любое итерируемое.

Возвращаемое значение

None. Метод модифицирует множество на месте.

Примеры использования

Пример 1. Базовое использование.

a = {1, 2, 3, 4}
a.symmetric_difference_update({3, 4, 5, 6})
print(a)
{1, 2, 5, 6}

Пример 2. Аргумент-список.

tags = {"python", "arduino", "esp32"}
tags.symmetric_difference_update(["arduino", "raspberry"])
print(tags)
{'python', 'esp32', 'raspberry'}

Пример 3. Оператор ``^=`` против метода.

a = {1, 2, 3}
a ^= {2, 3, 4}
print(a)

b = {1, 2, 3}
b.symmetric_difference_update({2, 3, 4})
print(b)
{1, 4}
{1, 4}

Пример 4. Сравнение двух конфигураций.

old_pins = {2, 3, 4, 5}
new_pins = {4, 5, 6, 7}
changed = old_pins.copy()
changed.symmetric_difference_update(new_pins)
print("Изменённые пины:", changed)
Изменённые пины: {2, 3, 6, 7}

Пример 5. С одинаковыми множествами.

a = {1, 2, 3}
a.symmetric_difference_update({1, 2, 3})
print(a)
set()

См. также

Примечание

Лицензия и источники

Техническое описание метода адаптировано из официальной документации Python (https://docs.python.org), доступной под Python Software Foundation License Version 2. Перевод на русский, примеры использования и пояснения — © AlashEd Wiki.