Python. Операції та функції для визначення надмножин та підмножин. Порівняння множин

Операції та функції для визначення надмножин та підмножин. Порівняння множин


Зміст


1. Операції >, >=. Надмножина. Приклад

Операції >, >= призначені для визначення того, чи є задана множина надмножиною над іншою. Результатом операцій є значення True або False.

Загальна форма операції > наступна

set1 > set2

де

  • set1 – множина, яка розглядається як надмножина. Якщо усі елементи множини set2 є в множині set1 і set1!=set2 (множини не є рівні), то результат операції є True. В іншому випадку результат операції є False;
  • set2 – множина, яка розглядається як підмножина.

Загальна форма операції >= наступна

set1 >= set2

де set1, set2 – множини, які розглядаються відповідно як надмножина та підмножина.

Операція >= повертає True при виконанні однієї з умов:

  • усі елементи множини set2 входять у множину set1;
  • set1==set2 (множини рівні).

В операціях >, >= множини не можуть бути пустими.

Приклад.

# Множини
# 1. Операція >. Визначення, чи множина є надмножиною
x = { 1, 2, 3 }
y = { 2 }
f = x > y # f = True

x = { 'a', 'b', 'c' }
y = { 'a', 'b', 'c' }
f = x > y # f = False - множини рівні

x = { 1, 2, 3 }
y = { 1, 4 }
f = x > y # f = False

# 2. Операція >=. Врахування умови рівності множин

x = { 1, 2, 3 }
y = { 1, 2, 3 }
f = x >= y # f = True

x = { 'abc', True, 5.66 }
y = { True, 5.66 }
f = x >= y # f = True

 

2. Операції <, <=. Підмножина. Приклад

Операції <, <= призначені для визначення того, чи є дана множина підмножиною іншої. Різниця між операціями < та <= виникає у випадку, коли порівнювані множини є рівні між собою. Якщо множини рівні, то операція < повертає значення False а операція <= повертає значення True.

Загальна форма операції < наступна

set1 < set2

де

  • set1 – множина, яка розглядається як підмножина. Якщо усі елементи множини set1 містяться в множині set2 і множини не є рівні (set1!=set2), тоді результат операції рівний True;
  • set2 – множина, яка розглядається як надмножина.

Загальна форма операції <= наступна

set1 <= set2

де set1, set2 непусті множини, які розглядаються як підмножина та надмножина.

Результат операції <= рівний True, якщо виконується одна з умов:

  • усі елементи множини set1 входять в множину set2;
  • множини рівні (set1==set2).

В операціях <, <= множини не можуть бути пустими.

Приклад.

# Множини
# 1. Операція <. Визначення, чи множина є підмножиною
x = { 1, 2, 3 }
y = { 1, 3, 5, 2, 8, 9 }
f = x < y # f = True

x = { 5 }
y = { 2, 'b', 7.20 }
f = x < y # f = False

# 2. Операція <=. Врахування умови рівності множин

x = { 2.8, 2.9, 3.2 }
y = { 2.9, 3.2, 2.8 }
f = x <= y # f = True - множини рівні

x = { 'a', 'c', 'd' }
y = { 'c', 'a' }
f = x <= y # f = False

 

3. Операції Порівняння множин ==, !=. Приклад

Операції ==, != використовуються для порівняння множин на рівність/нерівність. Результатом операцій є значення True або False.

Загальна форма операції перевірки на рівність == наступна

set1 == set2

де

  • set1, set2 – множини, які порівнюються на рівність. Якщо множини рівні, то повертається True, інакше повертається False.

Загальна форма операції перевірки на нерівність != наступна

set1 != set2

де

  • set1, set2 – множини, які порівнюються на нерівність. Якщо множини нерівні, то повертається True, інакше повертаєтья False.


Приклад 1. Використання операції == (порівняння на рівність).

# Множини
# Операція ==. Порівняння множин на рівність
x = { 1, 2, 3 }
y = { 1, 3, 2 }
f = x == y # f = True
print('f = ', f)

# Визначення, чи множини рівні в операторі if
x = { 'a', 'b', 'c', 'd' }
y = { 'b', 'a', 'c' }

if x==y:
    print("Sets are equals.")
else:
    print("Sets are not equals.")

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

f = True
Sets are not equals.

Приклад 2. Використання операції != (порівняння на нерівність).

# Множини
# Операція !=. Порівняння множин на нерівність

# Використання в операторі if
x = set('hello')
y = { 'h', 'e', 'l', 'o' }

print('x = ', x)
print('y = ', y)

if x!=y:
    print("Sets are not equals.")
else:
    print("Sets are equals.")

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

x = {'h', 'l', 'e', 'o'}
y = {'h', 'l', 'e', 'o'}
Sets are equals.

 

4. Функція issubset(). Визначення підмножини

Функція issubset() призначена для визначення того, чи поточна множина є підмножиною іншої. Загальна форма оголошення функції наступна

set.issubset(other)

де

  • set – поточна множина;
  • other – інша множина яка порівнюється на входження з множиною set.

Функція issubset() повертає значення True, якщо виконується одна з умов:

  • множина set є підмножиною множини other. Іншими словами, всі елементи множини set є в множині other;
  • множини set та other рівні між собою.

В інших випадках функція issubset() повертає значення False. Функція issubset() може бути замінена операцією <=.

Приклад.

# Множини
# Функція issubset() - визначення підмножини
x = { 2, 3, 4 }
y = { 3, 4 }
f1 = x.issubset(y) # f1 = False
f2 = y.issubset(x) # f2 = True

 

5. Функція issuperset(). Визначення надмножини

Функція issuperset() визначає, чи є поточна множина надмножиною над іншою. Загальна форма оголошення функції наступна

set.superset(other)

де

  • set – поточна множина;
  • other – інша множина, яка співставляється з множиною set. Якщо set є надмножиною other, то функція повертає True. В іншому випадку функція повертає False.

Функція issuperset() може бути замінена операцією >=.

Приклад.

# Множини
# Функція issuperset() - визначення наддмножини
x = { 2, 4, 6, 8 }
y = { 2, 8 }
f1 = x.issuperset(y) # f1 = True
f2 = y.issuperset(x) # f2 = False

 


Зв’язані теми