Kompleksne operacije sa skupovima u Pythonu

Kombinujući kratke oblike metoda koje ste učili u prethodnim lekcijama, mogu se izvoditi prilično kompleksne operacije sa skupovima.

Hajde da saznamo presek sva tri skupa:

pythonst1 = {1, 2, 3, 4}
st2 = {3, 4, 1, 6}
st3 = {1, 2, 8, 4}

res = st1 & st2 & st3
print(res) # ispisaće {1, 4}

Sada hajde da prvo saznamo po kojim elementima se prvi skup razlikuje od drugog. A zatim da nađemo presek dobijenog rezultata sa trećim skupom. Za označavanje prioriteta operacija primenjujemo grupirajuće zagrade:

pythonst1 = {1, 2, 8, 4}
st2 = {3, 4, 5, 6}
st3 = {6, 2, 8, 4}

res = (st1 - st2) & st3
print(res) # ispisaće {8, 2}
Задание 1

Data su tri skupa:

pythonst1 = {1, 3, 6, 8}
st2 = {5, 8, 4, 2}
st3 = {4, 7, 3, 1}

Spojite prvi i treći skup. Zatim otkrijte njihov presek sa trećim skupom.

Задание 2

Data su četiri skupa:

pythonst1 = {4, 2, 6, 10}
st2 = {1, 6, 3, 2}
st3 = {5, 8}
st4 = {6, 3, 1}

Otkrijte razliku između elemenata prvog i drugog skupa. Zatim spojite treći i četvrti skup. I na kraju pronađite zajedničke elemente skupova dobijenih kao rezultat prve i druge operacije.