set.difference_update()

Метод difference_update() удаляет из исходного множества все элементы, которые встречаются в одном из переданных итерируемых. Эквивалент оператора -=, но принимает любые итерируемые в качестве аргументов.

Сигнатура

set.difference_update(*others)

Параметры

  • *others — одно или несколько итерируемых (множества, списки, кортежи).

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

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

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

Пример 1. Удаление пересекающихся элементов.

sensors = {"DHT22", "BMP280", "MPU6050", "BH1750"}
broken = {"BMP280", "BH1750"}
sensors.difference_update(broken)
print(sensors)
{'DHT22', 'MPU6050'}

Пример 2. Несколько источников.

pins = {2, 3, 4, 5, 6, 7, 8}
pins.difference_update({2, 3}, [7, 8])
print(pins)
{4, 5, 6}

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

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

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

Пример 4. Удаление по списку.

ids = {101, 102, 103, 104, 105}
to_remove = [102, 104, 999]
ids.difference_update(to_remove)
print(ids)
{101, 103, 105}

Пример 5. Возвращает None.

s = {1, 2, 3}
result = s.difference_update({2})
print("Возврат:", result)
print("Множество:", s)
Возврат: None
Множество: {1, 3}

См. также

Примечание

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

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