Erstellen einen Satz von Sätzen in Python

Vaibhav Vaibhav 10 Oktober 2023
Erstellen einen Satz von Sätzen in Python

Als Programmierer sollte man sich mit Datenstrukturen gut auskennen. In der Informatik gibt es viele Datenstrukturen, aus denen Arrays und Mengen sehr einfach zu verstehen sind. Da es in diesem Artikel nicht um Datenstrukturen geht, werden wir nicht tief in sie eintauchen, sondern speziell über Sets sprechen.

In Python können wir ein Array von Arrays oder eine Liste von Listen erstellen. Dies gilt jedoch nicht für Sets. Wir können in Python keine Menge von Mengen erstellen. Glaubst du das nicht? Versuchen Sie den folgenden Code.

print({{1, 2}, {2, 3}})

Der obige Code löst einen Fehler aus, der wie folgt aussieht.

Traceback (most recent call last):
  File "<string>", line 1, in <module>
TypeError: unhashable type: 'set'

Da Sets veränderlich sind, können sie nicht gehasht werden. Da eine Menge hashfähige Werte benötigt, um die Eindeutigkeit zu wahren und doppelte Werte abzulehnen, können wir auf diese Weise keine Menge von Mengen erstellen. Stattdessen müssen wir verschiedene Ansätze verfolgen.

Mutable bedeutet, dass der Inhalt der Datenstruktur geändert werden kann, während unveränderlich bedeutet, dass der Inhalt der Datenstruktur nicht geändert werden kann. Einige Beispiele für veränderbare Datenstrukturen sind Listen, sets und dictionaries. Einige Beispiele für unveränderliche Datenstrukturen sind strings, frozenset und Tupel.

Hashable bedeutet, dass die Datenstruktur als eindeutiger String im Speicher dargestellt werden kann, während nicht hashbar bedeutet, dass die Datenstruktur nicht als eindeutiger String im Speicher dargestellt werden kann.

Set von Sets erstellen mit frozenset in Python

frozenset ist eine in Python vorgefertigte Art von Set. Ein frozenset und ein set führen die gleiche Funktion aus: einzigartige Werte speichern und doppelte Werte, die ihnen hinzugefügt wurden, zurückweisen. Jedoch ist ein frozenset unveränderlich und hashbar, während ein ‘Set’ veränderbar und nicht hashbar ist. Da ein frozenset unveränderlich ist, kann es als Schlüssel in einem Dictionary verwendet und in einem set gespeichert werden, da ein set nur unveränderliche Werte speichern kann. Lassen Sie uns dies mit etwas Python-Code besser verstehen.

a = set([frozenset([1, 2]), frozenset([2, 3]), frozenset([3, 4])])
print(a)

Die Ausgabe des obigen Codes ist wie folgt.

{frozenset({3, 4}), frozenset({2, 3}), frozenset({1, 2})}

Weitere Informationen zu frozenset finden Sie in der offiziellen Python-Dokumentation hier.

Vaibhav Vaibhav avatar Vaibhav Vaibhav avatar

Vaibhav is an artificial intelligence and cloud computing stan. He likes to build end-to-end full-stack web and mobile applications. Besides computer science and technology, he loves playing cricket and badminton, going on bike rides, and doodling.

Verwandter Artikel - Python Set