Математические операции. Часть 2
Часть раздела Logic & Flow путешествия по Python на Coddy — урок 34 из 78.
Давайте продолжим изучение математических операций с множествами, сосредоточившись на более сложных концепциях, таких как пересечение нескольких множеств и разность нескольких множеств.
Пересечение нескольких множеств (& или intersection()): Вы можете найти общие элементы среди нескольких множеств, используя оператор & или метод intersection() многократно или передавая несколько множеств в метод intersection().
set1 = {1, 2, 3}
set2 = {2, 3, 4}
set3 = {3, 4, 5}
intersection_result = set1 & set2 & set3
# Или
intersection_result = set1.intersection(set2, set3)
print(intersection_result)
# Вывод: {3}Разность нескольких множеств (- или difference()): Вы можете найти элементы, которые являются уникальными для первого множества по сравнению с несколькими другими множествами, используя оператор - или метод difference(). Это делается путем вычитания нескольких множеств из первого множества.
set1 = {1, 2, 3, 4, 5}
set2 = {4, 5, 6}
set3 = {5, 6, 7}
difference_result = set1 - set2 - set3
# Или
difference_result = set1.difference(set2, set3)
print(difference_result)
# Вывод: {1, 2, 3}В этих примерах мы сначала находим пересечение трех множеств, в результате чего получаем множество, содержащее только элемент, общий для всех трех множеств. Затем мы находим разность между несколькими множествами, в результате чего получаем множество, содержащее только элементы, уникальные для set1 после вычитания элементов set2 и set3.
Задание
ЛегкоПредставьте, что вы управляете эксклюзивным клубом, где участники разделены на разные группы в зависимости от их интересов. Вы хотите выяснить:
- Кто из участников разделяет общие интересы во всех группах?
- Кто является по-настоящему уникальным участником, принадлежащим только к первой группе и ни к каким другим?
Напишите программу, которая:
- Принимает три множества,
group1,group2иgroup3, представляющие участников трех групп по интересам. - Находит и выводит пересечение (intersection) всех трех групп (участники, общие для всех групп).
- Находит и выводит разность (difference)
group1с двумя другими группами (участники, которые есть только в первой группе).
Проверьте тестовые случаи для уточнения формата вывода!
Шпаргалка
Найдите общие элементы в нескольких множествах, используя пересечение (intersection):
set1 = {1, 2, 3}
set2 = {2, 3, 4}
set3 = {3, 4, 5}
# Использование оператора &
intersection_result = set1 & set2 & set3
# Использование метода intersection()
intersection_result = set1.intersection(set2, set3)
Найдите элементы, уникальные для первого множества по сравнению с несколькими другими множествами, используя разность (difference):
set1 = {1, 2, 3, 4, 5}
set2 = {4, 5, 6}
set3 = {5, 6, 7}
# Использование оператора -
difference_result = set1 - set2 - set3
# Использование метода difference()
difference_result = set1.difference(set2, set3)
Попробуйте сами
group1 = eval(input())
group2 = eval(input())
group3 = eval(input())
# Напишите свой код ниже
# Выведите результаты
print("Members in all groups:", sorted(list(intersection_result)))
print("Unique members in group1:", sorted(list(difference_result)))В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Logic & Flow
1Изучение переменных
КонстантыМножественное присваиваниеОбмен значениями переменныхПеременные-заполнителиОкругление чиселПриведение к списку4Приложение «Книга контактов»
Показать менюДобавить контакт7Множества. Часть 2
Математические операции. Часть 1Математические операции. Часть 2Повторение — Охота за сокровищамиПодмножества и надмножестваИтерация по множествамПовторение — Трекер турнира10Базовые генераторы списков
СинтаксисСоздание простых списковДобавление условийИспользование агрегации данныхПовторение — Дом списковПовторение — Элементы свободы13Система управления запасами
Обзор проектаДобавление товара2Словари. Часть 1
Что такое словарь?Создание словаряДоступ к значениямИзменение словарейИтоги — Менеджер рецептов5Продвинутое принятие решений
Тернарный операторПроверка вхожденияПроверка идентичностиОшибки отступовПовторение — Фильтр отпусков8Менеджер записей студентов
Обзор проектаДобавить студента11Продвинутые функции
Возврат нескольких значенийLambda-функции. Часть 1Lambda-функции. Часть 2Задача на повторение — Lambda-сортировкаРекурсивные функции. Часть 1Рекурсивные функции. Часть 2Повторение — сумма вложенного списка14Функции высшего порядка
Функция mapФункция filterПовторение — Валидатор emailПовторение — Обработчик чисел3Словари. Часть 2
Методы словарейВложенные словариПроверка наличия ключейПеребор словарей в циклеПовторение: счетчик частоты6Множества. Часть 1
Что такое множество?Основные операцииМетоды множествПовторение — удаление дубликатов9Продвинутая агрегация данных
Использование SumПоиск минимума и максимумаЭффективная сортировка данныхПовторение — Dictionary Sorter