Osnovna operacija na množici je preverjanje prisotnosti. Rezultat logičnega izraza
element in množicaje enak
True
natanko v primeru, če podani element pripada podani množici:
Napiši in preizkusi funkcijo PrestejSamoglasnike(beseda)
, ki vrne število samoglasnikov v podani besedi. Lahko predpostaviš, da je beseda sestavljena samo iz malih črk slovenske abecede. Na primer za besedo meteorologija
naj funkcija vrne število 7, za besedo vzbrst
pa 0.
Število elementov v množici pridobimo s funkcijo len
. S funkcijama add
in remove
dodajamo in odvzemamo posamezne elemente:
>>> mnozica = {'ponedeljek', 'torek'} >>> len(mnozica) 2 >>> mnozica.add('sreda') >>> mnozica.remove('ponedeljek') >>> mnozica {'sreda', 'torek'}
>>> mnozica.add('sreda') >>> mnozica {'sreda', 'torek'} >>> mnozica.remove('petek') Traceback (most recent call last): File "<stdin>", line 1, in <module> KeyError: 'petek'
Ker množica ne more vsebovati podvajanj, drugi klic funkcije add
nima nobenega učinka. Kot vidimo pri zadnjem klicu, funkcija remove
sproži izjemo, če podanega elementa v množici ni.
Iz matematike se gotovo spomniš preseka, unije in razlike množic. Python podpira vse tri operacije, le da namesto matematičnih operatorjev ⋂, ⋃ in ∖ uporablja funkcije intersection
, union
in difference
:
Bodimo pozorni, da izraz a.intersection(b)
ne spremeni množice a
, pač pa presek množic a
in b
shrani v novo množico. Enako velja za funkciji union
in difference
.