Junior
Vertel over het gegevenstype set.
sobes.tech AI
Antwoord van AI
Het gegevens type set in Python vertegenwoordigt een niet-gesorteerde sequentie van unieke elementen.
Belangrijkste eigenschappen:
- Niet-gesorteerd: De elementen in een set hebben geen vaste volgorde.
- Uniek: Elke waarde kan slechts één keer in de set voorkomen.
- Aanpasbaar: Sets kunnen elementen toevoegen en verwijderen (behalve
frozenset). - Elementen moeten hashbaar zijn: Onveranderlijke datatypes worden ondersteund (getallen, strings, tuples). Veranderlijke types (lijsten, woordenboeken) kunnen niet worden gebruikt.
Aanmaak:
# Lege set maken
lege_set = set()
# Set maken van een lijst
mijn_lijst = [1, 2, 3, 2, 4]
set_van_lijst = set(mijn_lijst) # set_van_lijst wordt {1, 2, 3, 4}
# Set maken met accolades
directe_set = {5, 6, 7}
Belangrijkste operaties:
| Operatie | Methode | Beschrijving |
|---|---|---|
| Element toevoegen | add(element) |
Voegt element toe aan de set. |
| Element verwijderen | remove(element) |
Verwijdert element. Geeft fout als niet aanwezig. |
| Element verwijderen (veilig) | discard(element) |
Verwijdert element. Doet niets als niet aanwezig. |
| Unie | union(), ` |
` |
| Doorsnede | intersection(), & |
Geeft een nieuwe set met gemeenschappelijke elementen. |
| Verschil | difference(), - |
Elementen van de eerste die niet in de tweede zijn. |
| Symmetrisch verschil | symmetric_difference(), ^ |
Elementen die alleen in één van de sets voorkomen. |
| Controle op aanwezigheid | in |
Boolean, of het element in de set zit. |
Voorbeelden:
set1 = {1, 2, 3, 4}
set2 = {3, 4, 5, 6}
# Unie
unie = set1.union(set2) # unie = {1, 2, 3, 4, 5, 6}
# Doorsnede
doorsnede = set1 & set2 # doorsnede = {3, 4}
# Verschil
difference = set1 - set2 # difference = {1, 2}
# Controle op aanwezigheid
aanwezig = 3 in set1 # aanwezig = True
Toepassingen in QA:
- Duplicaten zoeken in datalijsten.
- Twee resultaatsets vergelijken (bijvoorbeeld, verwacht en feitelijk).
- Unieke elementen filteren uit een sequentie.
- Snel controleren of een element in een grote verzameling data aanwezig is.
frozenset: Onveranderlijke versie van een set. Gebruikt wanneer een onveranderlijke set nodig is (bijvoorbeeld, als sleutel in een dictionary).