Python - Übungen mit Mengen

Hallo daar, zukünftige Python-Zauberer! Heute werden wir in die magische Welt der Python-Mengen eintauchen. Keine Sorge, wenn du noch nie programmiert hast – ich werde dein freundlicher Guide auf dieser spannenden Reise sein. Am Ende dieses Tutorials wirst du Sets wie ein Profi zaubern!

Python - Set Exercises

Was ist eine Menge?

Bevor wir zu unseren Übungen springen, lassen Sie uns schnell verstehen, was eine Menge in Python ist. Stell dir vor, du hast einen Beutel mit Murmeln, aber jede Murmel kann nur einmal im Beutel sein. Das ist im Grunde genommen, was eine Menge in Python ist – eine Sammlung einzigartiger Elemente.

Mengen sind unsortiert, das bedeutet, die Elemente haben keine spezifische Position. Sie sind auch veränderlich, sodass wir Elemente hinzufügen oder entfernen können. Allerdings müssen die Elemente selbst unveränderlich sein (wie Zahlen oder Zeichenketten, nicht Listen).

Nun, lass uns die Ärmel hochkrempeln und an die Arbeit gehen!

Python Menge Übung 1: Erstellen und Manipulieren von Mengen

Eine Menge erstellen

Lass uns damit beginnen, eine einfache Menge zu erstellen:

fruits = {"apple", "banana", "cherry"}
print(fruits)

Wenn du diesen Code ausführst, wirst du sehen:

{'cherry', 'banana', 'apple'}

Hast du bemerkt, wie die Reihenfolge vielleicht anders ist als unsere Eingabe? Das liegt daran, dass Mengen unsortiert sind!

Elemente zu einer Menge hinzufügen

Jetzt fügen wir einige mehr Früchte zu unserer Menge hinzu:

fruits.add("dragonfruit")
print(fruits)

fruits.update(["elderberry", "fig"])
print(fruits)

Ausgabe:

{'cherry', 'banana', 'apple', 'dragonfruit'}
{'fig', 'cherry', 'banana', 'elderberry', 'apple', 'dragonfruit'}

Siehst du, wie wir add() für ein einzelnes Element und update() für mehrere Elemente verwendet haben? Es ist, als würde man eine Murmel in deinen Beutel legen versus eine Handvoll hineinzuwerfen!

Elemente aus einer Menge entfernen

Lassen Sie uns einige Früchte entfernen:

fruits.remove("banana")
print(fruits)

fruits.discard("grape")  # Dies wird keine Fehlermeldung auslösen, selbst wenn "grape" nicht in der Menge ist
print(fruits)

Ausgabe:

{'fig', 'cherry', 'elderberry', 'apple', 'dragonfruit'}
{'fig', 'cherry', 'elderberry', 'apple', 'dragonfruit'}

remove() löst einen Fehler aus, wenn das Element nicht existiert, während discard() nicht. Es ist, als würde man vorsichtig eine bestimmte Murmel auswählen versus locker nach einer zu suchen, um sie zu entfernen.

Python Menge Übung 2: Menge-Operationen

Jetzt, da wir die Grundlagen beherrschen, lassen Sie uns mit mehreren Mengen spielen!

Vereinigung von Mengen

Stell dir vor, du und dein Freund haben beide Beutel mit Murmeln. Die Vereinigung ist alle einzigartigen Murmeln, die ihr zusammen habt.

set1 = {1, 2, 3, 4, 5}
set2 = {4, 5, 6, 7, 8}
union_set = set1.union(set2)
print(union_set)

Ausgabe:

{1, 2, 3, 4, 5, 6, 7, 8}

Schnittmenge von Mengen

Der Schnitt ist die Murmeln, die ihr beide habt.

intersection_set = set1.intersection(set2)
print(intersection_set)

Ausgabe:

{4, 5}

Differenz von Mengen

Die Differenz sind die Murmeln, die du hast und dein Freund nicht.

difference_set = set1.difference(set2)
print(difference_set)

Ausgabe:

{1, 2, 3}

Python Menge Übung 3: Fortgeschrittene Menge-Operationen

Bereit, um ein Level aufzusteigen? Lassen Sie uns einige mehr fortgeschrittene Operationen angehen!

Symmetrische Differenz

Dies gibt uns alle Murmeln, die in einer der Mengen, aber nicht in beiden sind.

symmetric_difference = set1.symmetric_difference(set2)
print(symmetric_difference)

Ausgabe:

{1, 2, 3, 6, 7, 8}

Teilmenge und Obermenge

Lassen Sie uns überprüfen, ob eine Menge in einer anderen enthalten ist:

set3 = {1, 2, 3}
print(set3.issubset(set1))  # Ist set3 eine Teilmenge von set1?
print(set1.issuperset(set3))  # Ist set1 eine Obermenge von set3?

Ausgabe:

True
True

Es ist, als würde man überprüfen, ob alle deine Murmeln auch in der größeren Sammlung deines Freundes sind!

Gefrierter Satz

Manchmal brauchen wir eine Menge, die nicht geändert werden kann. Hier kommt der gefrierte Satz ins Spiel:

frozen_fruits = frozenset(["apple", "banana", "cherry"])
print(frozen_fruits)

# Dies wird eine Fehlermeldung auslösen:
# frozen_fruits.add("dragonfruit")

Ausgabe:

frozenset({'cherry', 'banana', 'apple'})

Denk daran, eine gefrierter Satz ist wie ein Beutel mit Murmeln, der in Eis versiegelt ist – du kannst schauen, aber nicht berühren!

Zusammenfassung der Menge-Methoden

Hier ist eine praktische Tabelle der Mengen-Methoden, die wir gelernt haben:

Methode Beschreibung
add() Fügt ein Element zur Menge hinzu
update() Aktualisiert die Menge mit Elementen aus einer anderen Menge oder Iterablen
remove() Entfernt ein spezifiziertes Element (löst einen Fehler aus, wenn nicht gefunden)
discard() Entfernt ein spezifiziertes Element (kein Fehler, wenn nicht gefunden)
union() Liefert eine Menge, die die Vereinigung von Mengen enthält
intersection() Liefert eine Menge, die den Schnitt von Mengen enthält
difference() Liefert eine Menge, die die Differenz zwischen Mengen enthält
symmetric_difference() Liefert eine Menge mit Elementen in einer oder der anderen Menge, aber nicht in beiden
issubset() Überprüft, ob eine Menge eine Teilmenge einer anderen Menge ist
issuperset() Überprüft, ob eine Menge eine Obermenge einer anderen Menge ist

Und da haben wir es, Leute! Du hast gerade deine Python-Fähigkeiten mit Mengen aufgelevelt. Denk daran, Übung macht den Meister, also lies mit diesen Konzepten weiter spielen. Bevor du es dir merkst, wirst du Mengen wie ein wahrer Python-Zauberer manipulieren!

Credits: Image by storyset