Zum Inhalt springen

Grundlagen für Python Sets

  • Python

Python Sets werden verwendet, wenn man mehrere Elemente in einer einzigen Variablen speichern will. Das Set wird vor allem dann genutzt, wenn mehrere Wiederholungen eines Elements nicht erlaubt sind. Die Element innerhalb eines Sets sind also einzigartig.

Ein Python Set definiert man, indem die einzelnen Werte durch Kommas getrennt in geschweiften Klammern schreibt. Die Element können auch verschiedene Datentypen haben und trotzdem in demselben Set gespeichert werden.

# Define a set
set_1 = {'first element', 2, False, 'Fourth Element'}
set_1 = set(('first element', 2, False, 'Fourth Element'))

Als zweite Möglichkeit zur Definition eines Python Sets kann man auch den Operator „set“ nutzen und die Elemente in doppelte, runde Klammern schreiben. Diese Herangehensweise wird jedoch eher selten genutzt.

Elemente abfragen

Da das Set nicht geordnet ist und die Reihenfolge somit keine Rolle spielt, können einzelne Elemente nicht über einen Index oder einen Schlüssel abgefragt werden, wie wir es von der Python List oder dem Dictionary kennen. Die einzige Möglichkeit, die noch bleibt, ist abzufragen, ob ein gewisses Element in dem Set vorkommt.

# Define set
set_1 = {'first element', 2, False, 'Fourth Element'}

# Check if element in set
print('first element' in set_1)
print('second element' in set_1)

Out: 
True
False

Hinzufügen von Elementen

Ein bestehendes Set kann durch einzelne Elemente erweitert werden oder es kann sogar ein ganzes Set zu einem bestehenden hinzugefügt werden.

# Define set
set_1 = {'first element', 2, False, 'Fourth Element'}
set_2 = {'new element', 34}

# Add one element to a set
set_1.add('new_element')
print(set_1)

# Add a new set to an existing one
set_1.update(set_2)
print(set_1)

Out:
{False, 2, 'Fourth Element', 'first element', 'new element'}
{False, 2, 34, 'Fourth Element', 'first element', 'new element'}

Es fällt auf, dass der Wert „new element“ im finalen Set lediglich einmal vorkommt. Wenn wir also Werte zu einem Python Set hinzufügen wollen, die bereits im Set vorhanden sind, werden sie einfach ignoriert.

Dadurch dass die vier Datentypen in Python eng miteinander verbunden sind, können wir auch Variablen mit verschiedenen Datentypen verbinden. Es lassen sich beispielsweise auch Listen zu einem bestehenden Set hinzufügen. Doppelte Elemente in der Liste werden selbstverständlich im Set nur einmal beachtet.

# Define a set and a list
set_1 = {'first element', 2, False, 'Fourth Element'}
list_2 = ['third element', 'third element']

# Add list to set
set_1.update(list_2)
print(set_1)

Out:
{False, 2, 'third element', 'Fourth Element', 'first element'}

Löschen von Elementen

Wenn wir Elemente aus einem Python Set löschen wollen, gibt es auch verschiedene Möglichkeiten. Mit den Befehlen „remove“ oder „discard“ können wir unter Angabe eines bestimmten Wertes das Element löschen. Mit „pop“ hingegen löscht man das Element, welches als letztes dem Set hinzugefügt wurde. Abschließend gibt es noch „clear“. Dieser Befehl löscht alle Elemente des Sets und hinterlässt eine Variable mit einem leeren Set.

# Define a set
set_1 = set_1 = {'first element', 2, False, 'Fourth Element'}

# Remove specific items
set_1.remove('first element')
set_1.discard(2)

# Remove the last element of the set
set_1.pop()

# Clear the whole set
set_1.clear()

Python Sammlungen

In Python gibt es insgesamt vier Datentypen, die standardmäßig hinterlegt sind:

  • Die Liste ist eine geordnete Sammlung von Elementen, die änderbar ist und auch doppelte Elemente enthalten kann.
  • Das Tuple ist im Endeffekt eine Liste, mit dem Unterschied, dass es nicht mehr änderbar ist. Es können also keine Elemente mehr nachträglich hinzugefügt oder entfernt werden.
  • Das Set lässt keine doppelten Einträge zu. Gleichzeitig ist die Anordnung der Elemente innerhalb des Sets variabel. Das Set an sich kann verändert werden, aber die einzelnen Elemente können nicht nachträglich geändert werden.
  • Ein Dictionary ist seit der Python Version 3.7 eine geordnete Sammlung von Elementen, die änderbar ist. In den früheren Versionen ist das Dictionary ungeordnet.

Das solltest Du mitnehmen

  • Das Python Set ist eines von insgesamt vier vorinstallierten Datenstrukturen in Python.
  • Es wird genutzt, um mehrere einzigartige Element in einer einzigen Variablen abspeichern zu können. Die Reihenfolge der Element spielt dabei erstmal keine Rolle.

Andere Beiträge zum Thema Python Set

  • w3schools bietet ausführliche Beispiele zu Python Sets mit der Möglichkeit auch online Codeschnipsel direkt ausführen zu können.
close
Das Logo zeigt einen weißen Hintergrund den Namen "Data Basecamp" mit blauer Schrift. Im rechten unteren Eck wird eine Bergsilhouette in Blau gezeigt.

Verpass keine neuen Beiträge!

Wir versenden keinen Spam! Lies die Details gerne in unserer Datenschutzrichtlinie nach.

Schlagwörter:
Cookie Consent mit Real Cookie Banner