Найти тему
programmer's notes (python and more)

Основы программирования на языке Python. Операции над множествами. К уроку 18 (Ч. 2)

Доброго времени суток, читатели, зрители моего канала programmer's notes.

Данная статья это второе приложение к уроку 18.

Основы программирования на языке Python. Урок 18. Множества. Операции с множествами

Операции над множествами в языке программирования Python. Методы

В уроках

я уже немного коснулся методов, которые можно использовать при работе со множествами. Теперь рассмотрим методы, которые выполняют те же операции, что и рассмотренные в статье

операторы.

1. Объединение множеств (метод union())

st1 = {1, 2, 3, 4, 7}
st2 = {5, 7}
sst = st1.union(st2)
print(sst)

Результат выполнения

{1, 2, 3, 4, 5, 7}

Есть еще один метод update(), который выполняет похожую операцию. Но он по-сути добавляет элементы в само множество, а не создает новое:

st1 = {1, 2, 3, 4, 7}
st2 = {5, 7}
st1.update(st2)
print(st1)

Результат выполнения

{1, 2, 3, 4, 5, 7}

2. Пересечение множеств (метод intersection())

st1 = {1, 2, 3, 4, 7}
st2 = {5, 7, 2}
stt = st1.intersection(st2)
print(stt)

Результат выполнения

{2, 7}

3. Разность множеств (метод difference())

st1 = {1, 2, 3, 4, 7}
st2 = {5, 7, 2}
stt = st1.difference(st2)
print(stt)

Результат выполнения

{1, 3, 4}

4. Симметричная разность (метод symmetric_difference())

st1 = {1, 2, 3, 4, 7}
st2 = {5, 7, 2}
stt = st1.symmetric_difference(st2)
print(stt)

Результат выполнения

5. Подмножества (методы issubset() и issuperset())

st1 = {1, 2, 3, 4, 7}
st2 = {1, 7, 2}
print(st2.issubset(st1))
print(st1.issuperset(st2))

Результат выполнения

True
True

6. Еще один метод isdisjoint()

Метод возвращает True, если два множества имеют пустое пересечение

st1 = {1, 2, 3}
st2 = {4, 5, 6}
print(st1.isdisjoint(st2))

Результат выполнения

True

Важное замечание 1
Есть различие между использованием операторов, которые были представлены в
предыдущем приложении, и методов. Метод может содержать в качестве аргумента не только множество, но и другую коллекцию, которая автоматически преобразуется в множество.

st = {1, 2, 3, 4, 5, 6}
ls = [1, 3, 6, 6]
st.union(ls)
print(st)

Результат выполнения

{1, 2, 3, 4, 5, 6}

Важное замечание 2

Отметим, что методы union(), update(), intersection(), difference(), symmetric_difference() могут иметь несколько аргументов, отделенных запятой.

st1 = {1, 2, 3, 4}
st2 = {4, 5, 6, 1}
ls = [10, 11]
stt = st1.union(st2, ls)
print(stt)

Результат выполнения фрагмента

{1, 2, 3, 4, 5, 6, 10, 11}

Пока все. Следующий видео-урок будет по решению задач на множества.

Мне кажется в вашей программы недостает не много переменных
Мне кажется в вашей программы недостает не много переменных

#программирование #программисты #python #языки программирования