8.1 Таблица операторов и методов

Язык Python поддерживает перегрузку операторов, а это значит, что операции над объектами можно делать не только с помощью методов, но и с помощью операторов, таких как: +, -, *, /, | и т.д.

Класс set (множество) перегрузил все возможные операторы, чтобы работать с множествами было просто и очень похоже, как это делает в математике.

Вот таблица таких операторов:

Оператор Метод Описание
| union() Возвращает объединение двух множеств.
& intersection() Возвращает пересечение множеств (только общие элементы).
- difference() Возвращает разность множеств (элементы, которые есть только в первом множестве).
^ symmetric_difference() Возвращает симметрическую разность множеств (элементы, которые есть в одном из множеств, но не в обоих).
<= issubset() Проверяет, является ли одно множество подмножеством другого.
< issubset() Проверяет, является ли одно множество собственным подмножеством другого (строгое подмножество).
>= issuperset() Проверяет, является ли одно множество надмножеством другого.
> issuperset() Проверяет, является ли одно множество собственным надмножеством другого (строгое надмножество).
== __eq__() Проверяет, равны ли множества (содержат одинаковые элементы).
!= __ne__() Проверяет, не равны ли множества (содержат разные элементы).

Очень удобно использовать операторы при работе с множествами – сейчас вы сами в этом убедитесь

8.2 Работа с множествами через операторы

Объединение (OR)

Оператор | Использование функции union()

 

set1 = {1, 2, 3}
set2 = {3, 4, 5}
union_set = set1 | set2
print(union_set)  # Вывод: {1, 2, 3, 4, 5}
                    

 

set1 = {1, 2, 3}
set2 = {3, 4, 5}
union_set = set1.union(set2)  
print(union_set)  # Вывод: {1, 2, 3, 4, 5}
                            
                    

Пересечение (AND)

Оператор & Использование функции intersection ()

 

set1 = {1, 2, 3}
set2 = {3, 4, 5}
intersection_set = set1 & set2
print(intersection_set)  # Вывод: {3}
                    

 

set1 = {1, 2, 3}
set2 = {3, 4, 5}
intersection_set = set1.intersection(set2)
print(intersection_set)  # Вывод: {3}

Разность (DIFFERENCE)

Оператор - Использование функции difference ()

 

set1 = {1, 2, 3, 4}
set2 = {3, 4, 5}
difference_set = set1 - set2
print(difference_set)  # Вывод: {1, 2}

                    

 

set1 = {1, 2, 3, 4}
set2 = {3, 4, 5}
difference_set = set1.difference(set2)
print(difference_set)  # Вывод: {1, 2}

Симметрическая разность (SYMMETRIC DIFFERENCE)

Оператор ^ Использование функции symmetric_difference ()

 

set1 = {1, 2, 3}
set2 = {3, 4, 5}
s_diff = set1 ^ set2
print(s_diff)  # Вывод: {1, 2, 4, 5}
                    

 

set1 = {1, 2, 3}
set2 = {3, 4, 5}
s_diff = set1.symmetric_difference(set2)
print(s_diff)  # Вывод: {1, 2, 4, 5}

Странно, что нигде не используется оператор + или *, но как говориться хозяин — барин. Разработчики языка Python так решили и им виднее.

undefined
2
Задача
Модуль 1: Python Core, 6 уровень, 7 лекция
Недоступна
Объединение и пересечение
Объединение и пересечение
undefined
2
Задача
Модуль 1: Python Core, 6 уровень, 7 лекция
Недоступна
Разность множеств
Разность множеств
undefined
1
Опрос
Множества в Python,  6 уровень,  7 лекция
недоступен
Множества в Python
Множества в Python