You are on page 1of 4

PYTHON

Skupovi ( sets )
Tip podataka koji nema istih elemenata
Ključna riječ set

Definiranje praznog skupa


skup=set()

Kako kreirati skup:


>>> s=set([1,2,3,4,5])
>>> s
{1, 2, 3, 4, 5}

Skup možemo kreirati i pomoću vitičastih zagrada:

>>> s={'a', 'b'}


>>> s
{'a', 'b'}

Metoda .add() – dodavanje elementa u skup

>>> s.add(10)
>>> s
{1, 2, 3, 4, 5, 10}

Što ako dodamo već postojeći element?

Dodavanje slučajnih brojeva u skup:

>>> from random import*


>>> skup=set()
>>> skup.add(randint(0,10))
>>> skup
{7}
>>> skup.add(randint(0,10))
>>> skup
{3, 7}
>>> skup.add(randint(0,10))
>>> skup
{1, 3, 7}

Metoda .remove() – brisanje elementa iz skupa ( samo jednog )

Metoda .clear() – briše sve elemente iz skupa

Metoda .discard() – briše element iz skupa ako se taj element nalazi u skupu

Metoda .pop() – uzima element iz skupa ( jedan po jedan ) i tog elementa više nema u listi

1
PYTHON

>>> s=set([1,2,3,4,5,])
>>> s
{1, 2, 3, 4, 5}
>>> s.pop()
1
>>> s
{2, 3, 4, 5}

Često skupovi nastaju iz lista. Time možemo jednostavno eliminirati ponavljajuće elemente.

>>> ocjene=[1,1,1,2,3,3,4,4,4,5,5,5,5,5]
>>> skup=set(ocjene)
>>> skup
{1, 2, 3, 4, 5}

>>> listaAuto = ['audi', 'fiat', 'bmw', 'suzuki', 'bmw',


'audi']
>>> setAuto = set(listaAuto)
>>> setAuto
{'bmw', 'audi', 'fiat', 'suzuki'}

Provjera da li se neki element nalazi u skupu:

>>> skup
{1, 2, 3, 4, 5}
>>> 5 in skup
True

>>> 'citroen' in setAuto


False

Funkcija len(set) – vraća duljinu skupa ( broj elemenata u skupu )

>>> len(setAuto)
4

Iteracija na skupu:

>>> for broj in skup:


print(broj)

2
PYTHON

1
2
3
4
5

>>> for auto in setAuto:


print(auto)

bmw
audi
fiat
suzuki

Operacije nad skupovima ( presjek, unija, razlika ):

>>> a='macka'
>>> b='pas'
>>> s1=set(a)
>>> s2=set(b)
>>> print (s1)
{'m', 'a', 'k', 'c'}
>>> print (s2)
{'a', 'p', 's'}
>>> print('presjek', s1.intersection(s2))
presjek {'a'}
>>> print('unija', s1.union(s2))
unija {'m', 's', 'k', 'a', 'p', 'c'}
>>> print('razlika', s1.difference(s2))
razlika {'m', 'c', 'k'}

Podskup ( pripadnost jednog skupa drugome skupu )

>>> a='dobar dan'


>>> b='dan'
>>> s1=set(a)
>>> s2=set(b)
>>> s2.issubset(s1)
True

3
PYTHON

U gornjim su primjerima operacije nad skupovima provedene preko metoda .intersection(),


.union(), .difference(). Isto možemo postići i operatorima:

Unija |
Presjek &
Razlika -
Podskup <
Različito !=
Jednako ==

>>> a={1,2,3,4,5}
>>> b={5,6,7}
>>> a|b
{1, 2, 3, 4, 5, 6, 7}
>>> a&b
{5}
>>> a-b
{1, 2, 3, 4}
>>> a<b
False
>>> a!=b
True

You might also like