15.2 Veränderliche Mengen – set 

Das set bietet als Datentyp für veränderliche Mengen einige Methoden, die über den eben besprochenen Grundbestand hinausgehen. Beachten Sie, dass alle hier eingeführten Methoden nicht für frozenset verfügbar sind.
Methode | Beschreibung |
---|---|
s.add(e) | Fügt das Objekt e als Element in die Menge s ein. |
s.clear() | Löscht alle Elemente der Menge s, jedoch nicht die Menge selbst. |
s.difference_update(t) | Äquivalent zu s -= t |
s.discard(e) | Löscht das Element e aus der Menge s. Sollte e nicht vorhanden sein, wird dies ignoriert. |
s.intersection_update(t) | Äquivalent zu s &= t |
s.remove(e) | Löscht das Element e aus der Menge s. Sollte e nicht vorhanden sein, wird eine Exception erzeugt. |
s.symmetric_difference_update(t) | Äquivalent zu s ^= t |
s.update(t) | Äquivalent zu s |= t |
Tabelle 15.4 Methoden des Datentyps set
Diese Methoden möchten wir im Folgenden anhand einiger Beispiele erläutern.
s.add(e)
Die Methode add fügt ein Element e in die Menge s ein:
>>> s = {1,2,3,4,5}
>>> s.add(6)
>>> s
{1, 2, 3, 4, 5, 6}
Sollte e bereits in der Menge vorhanden sein, verändert sich diese nicht.
s.clear()
Die Methode clear entfernt alle Elemente aus der Menge s. Die Menge selbst bleibt nach dem Aufruf von clear weiterhin erhalten:
>>> s = {1,2,3,4,5}
>>> s.clear()
>>> s
set()
s.discard(e)
Die Methode discard löscht ein Element e aus der Menge s. Der einzige Unterschied zur Methode remove besteht darin, dass keine Fehlermeldung erzeugt wird, wenn e nicht in s vorhanden ist:
>>> s = {1,2,3,4,5}
>>> s.discard(5)
>>> s
{1, 2, 3, 4}
>>> s.discard(17)
>>> s
{1, 2, 3, 4}
s.remove(e)
Die Methode remove löscht alle Vorkommnisse des Elements e aus der Menge s:
>>> s = {1,2,3,4,5}
>>> s.remove(5)
>>> s
{1, 2, 3, 4}
Sollte das zu löschende Element nicht in der Menge vorhanden sein, wird eine Fehlermeldung erzeugt:
>>> s.remove(17)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
KeyError: 17