Pythoni komplektid on kollektsiooni tüüp, mis sisaldab tellimata kogumine ainulaadne ja muutumatu objektid. Teisisõnu, Pythoni komplekt ei saa hoida duplikaatüksusi ja kui komplekt on loodud, ei saa üksused muutuda.
Märge:Komplekti üksused on muutumatud, see tähendab, et me ei saa neid üksusi muuta. Hulk ise on aga muudetav, st saame komplekti lisada ja eemaldada elemente.Järjekorda ei peeta. Näiteks alati, kui printite sama komplekti, võib üksuste järjekord olla erinev.
Pythonis koostatakse komplektid lokkisulgudes {}
ja iga komplekti üksus eraldatakse komaga ,
Nagu Pythoni loendid, võivad ka komplektid sisaldada mitut tüüpi objekte, nii et need kõik ei pea olema stringid ega täisarvud. Näiteks võib meil olla komplekt, mis sisaldab segatüüpe:
mixedTypesSet = {'one', True, 13, 2.0}
colorsSet = {'red', 'green', 'blue'} print(colorsSet)
Väljund:
{'red', 'blue', 'green'}
Me ei saa komplekti üksusele juurde pääsemiseks kasutada indeksit. Seda seetõttu, et komplekt on korrastamata ja ei hoia indeksit. Siiski võime kasutada for
silmus, et itereerida komplekti üksusi.
colorsSet = {'red', 'green', 'blue'} for c in colorsSet:
print(c)
Väljund:
green red blue
Komplekti ühe elemendi lisamiseks peame kasutama add()
meetod.
Rohkem kui ühe üksuse lisamiseks komplektile peame kasutama update()
meetod.
colorsSet = {'red', 'green', 'blue'} colorsSet.add('yellow') print(colorsSet)
Väljund:
{'blue', 'red', 'green', 'yellow'}
colorsSet = {'red', 'green', 'blue'} colorsSet.update(['yellow', 'orange', 'white']) print(colorsSet)
Väljund:
{'white', 'red', 'green', 'yellow', 'orange', 'blue'}
Üksuse komplektist eemaldamiseks on kaks meetodit: remove()
ja discard()
.
remove()
meetod eemaldab määratud üksuse. Kui üksust pole olemas, remove()
tõstatab vea.
colorsSet = {'red', 'green', 'blue', 'orange'} colorsSet.remove('orange') print(colorsSet)
Väljund:
{'blue', 'green', 'red'}
discard()
meetod eemaldab määratud üksuse. Kui üksust pole olemas, discard()
tahe MITTE tõsta viga.
Kõigi elementide eemaldamiseks ja komplekti tühjendamiseks kasutame clear()
meetod:
colorsSet = {'red', 'green', 'blue', 'orange'} colorsSet.clear() print(colorsSet)
Väljund:
set()
Komplekti täielikuks kustutamiseks kasutage klahvi del
märksõna:
colorsSet = {'red', 'green', 'blue', 'orange'} del colorSet print(colorsSet)
Väljund:
Traceback (most recent call last): File 'pythonSet.py', line 78, in
del colorSet NameError: name 'colorSet' is not defined
Määratud pikkuse saate helistades len()
meetod, nt:
colorsSet = {'red', 'green', 'blue', 'orange'} print(len(colorsSet))
Väljund:
4
Lihtsaim viis kahe komplekti ühendamiseks on union()
meetod, mis tagastab uue komplekti, mis sisaldab ühendatud komplektide elemente.
colorsSet = {'red', 'green', 'blue', 'orange'} numbersSet = {1, 2, 3, 4} numbersAndColors = colorsSet.union(numbersSet) print(numbersAndColors)
Väljund:
{1, 2, 'blue', 3, 4, 'green', 'red', 'orange'}