Python — наборы соединений
Присоединяйтесь к двум наборам
В Python существует несколько способов соединения двух или более наборов.
Вы можете использовать union()
метод, который возвращает новый набор, содержащий все элементы из обоих наборов, или update()
метод, который вставляет все элементы из одного набора в другой:
Пример
Метод union()
возвращает новый набор со всеми элементами из обоих наборов:
set1 = {"a", "b" , "c"}
set2 = {1, 2, 3}
set3 = set1.union(set2)
print(set3)
Пример
Метод update()
вставляет элементы из set2 в set1:
set1 = {"a", "b" , "c"}
set2 = {1, 2, 3}
set1.update(set2)
print(set1)
Примечание. И то, union()
и другое update()
исключает любые повторяющиеся элементы.
Сохраняйте ТОЛЬКО дубликаты
Метод intersection_update()
сохранит только те элементы, которые присутствуют в обоих наборах.
Пример
Сохраните элементы, которые существуют как в set x
, так и в set y
:
x = {"apple", "banana", "cherry"}
y = {"google", "microsoft", "apple"}
x.intersection_update(y)
print(x)
Метод intersection()
вернет новый набор, содержащий только те элементы, которые присутствуют в обоих наборах.
Пример
Возвращает набор, содержащий элементы, существующие как в наборе x
, так и в наборе y
:
x = {"apple", "banana", "cherry"}
y = {"google", "microsoft", "apple"}
z = x.intersection(y)
print(z)
Сохранить все, но НЕ дубликаты
Метод symmetric_difference_update()
сохранит только те элементы, которые НЕ присутствуют в обоих наборах.
Пример
Сохраните предметы, которых нет в обоих наборах:
x = {"apple", "banana", "cherry"}
y = {"google", "microsoft", "apple"}
x.symmetric_difference_update(y)
print(x)
Метод symmetric_difference()
вернет новый набор, содержащий только те элементы, которые НЕ присутствуют в обоих наборах.
Пример
Возвращает набор, содержащий все элементы из обоих наборов, кроме элементов, присутствующих в обоих:
x = {"apple", "banana", "cherry"}
y = {"google", "microsoft", "apple"}
z = x.symmetric_difference(y)
print(z)