Подмножества и надмножества
Часть раздела Logic & Flow путешествия по Python на Coddy — урок 36 из 78.
В теории множеств подмножество — это множество, все элементы которого содержатся в другом множестве. И наоборот, надмножество — это множество, которое содержит все элементы другого множества.
Проверка на подмножество (<= или issubset()):
set1 = {1, 2}
set2 = {1, 2, 3}
is_subset = set1 <= set2
print(is_subset)
# Вывод: TrueВ этом примере set1 является подмножеством set2, потому что все элементы set1 также присутствуют в set2.
Проверка на строгое подмножество (<):
set1 = {1, 2}
set2 = {1, 2, 3}
is_proper_subset = set1 < set2
print(is_proper_subset)
# Вывод: TrueЗдесь set1 является строгим подмножеством set2, потому что set1 является подмножеством set2, и set2 содержит как минимум один элемент, которого нет в set1.
Проверка на надмножество (>= или issuperset()):
set1 = {1, 2, 3}
set2 = {1, 2}
is_superset = set1 >= set2
print(is_superset)
# Вывод: TrueВ этом случае set1 является надмножеством set2, потому что set1 содержит все элементы set2.
Проверка на строгое надмножество (>):
set1 = {1, 2, 3}
set2 = {1, 2}
is_proper_superset = set1 > set2
print(is_proper_superset)
# Вывод: TrueЗдесь set1 является строгим надмножеством set2, потому что set1 является надмножеством set2, и set1 содержит как минимум один элемент, которого нет в set2.
Задание
ЛегкоСоздайте функцию с именем check_sets, которая принимает два множества, set1 и set2, в качестве аргументов. Функция должна выполнять следующие операции:
- Проверьте, является ли
set1подмножествомset2. - Проверьте, является ли
set2надмножествомset1. - Проверьте, является ли
set1строгим подмножествомset2. - Проверьте, является ли
set2строгим надмножествомset1. - Верните словарь, содержащий результаты этих операций, с ключами
"is_subset","is_superset","is_proper_subset"и"is_proper_superset".
Шпаргалка
Подмножество — это множество, все элементы которого содержатся в другом множестве. Надмножество — это множество, которое содержит все элементы другого множества.
Проверка на подмножество с помощью <= или issubset():
set1 = {1, 2}
set2 = {1, 2, 3}
is_subset = set1 <= set2 # TrueПроверка на строгое подмножество с помощью <:
set1 = {1, 2}
set2 = {1, 2, 3}
is_proper_subset = set1 < set2 # TrueПроверка на надмножество с помощью >= или issuperset():
set1 = {1, 2, 3}
set2 = {1, 2}
is_superset = set1 >= set2 # TrueПроверка на строгое надмножество с помощью >:
set1 = {1, 2, 3}
set2 = {1, 2}
is_proper_superset = set1 > set2 # TrueПопробуйте сами
def check_sets(set1, set2):
# Проверить, является ли set1 подмножеством set2
is_subset =
# Проверить, является ли set2 надмножеством set1
is_superset =
# Проверить, является ли set1 строгим подмножеством set2
is_proper_subset =
# Проверить, является ли set2 строгим надмножеством set1
is_proper_superset =
# Вернуть словарь, содержащий результаты
return {
"is_subset": is_subset,
"is_superset": is_superset,
"is_proper_subset": is_proper_subset,
"is_proper_superset": is_proper_superset
}В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела 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