Wie man prüft, ob ein Tupel in Python Duplikate enthält

PythonPythonBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Lab lernen Sie, wie Sie in Python-Tupeln (Tupel) auf Duplikate prüfen können. Das Lab untersucht zwei Hauptmethoden: das Vergleichen der Länge des Tupels mit der Länge seiner Mengendarstellung und die Verwendung des collections.Counter-Objekts.

Der erste Schritt besteht darin, zu verstehen, wie Tupel Duplikate verarbeiten, indem Sie ein Tupel mit Duplikaten erstellen und auf diese über Indizierung zugreifen. Dies zeigt, dass Tupel die Reihenfolge und Häufigkeit der Elemente, einschließlich Duplikaten, beibehalten. Der zweite Schritt, der hier abgeschnitten ist, wird wahrscheinlich das Vergleichen der len() des Tupels mit der len() seiner Mengendarstellung umfassen, um das Vorhandensein von Duplikaten festzustellen.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/FunctionsGroup(["Functions"]) python(("Python")) -.-> python/PythonStandardLibraryGroup(["Python Standard Library"]) python(("Python")) -.-> python/DataScienceandMachineLearningGroup(["Data Science and Machine Learning"]) python(("Python")) -.-> python/DataStructuresGroup(["Data Structures"]) python/DataStructuresGroup -.-> python/tuples("Tuples") python/DataStructuresGroup -.-> python/sets("Sets") python/FunctionsGroup -.-> python/build_in_functions("Build-in Functions") python/PythonStandardLibraryGroup -.-> python/data_collections("Data Collections") python/DataScienceandMachineLearningGroup -.-> python/data_analysis("Data Analysis") subgraph Lab Skills python/tuples -.-> lab-559588{{"Wie man prüft, ob ein Tupel in Python Duplikate enthält"}} python/sets -.-> lab-559588{{"Wie man prüft, ob ein Tupel in Python Duplikate enthält"}} python/build_in_functions -.-> lab-559588{{"Wie man prüft, ob ein Tupel in Python Duplikate enthält"}} python/data_collections -.-> lab-559588{{"Wie man prüft, ob ein Tupel in Python Duplikate enthält"}} python/data_analysis -.-> lab-559588{{"Wie man prüft, ob ein Tupel in Python Duplikate enthält"}} end

Duplikate in Tupeln verstehen

In diesem Schritt werden wir untersuchen, wie Tupel (Tupel) Duplikate verarbeiten. Tupel können, ähnlich wie Listen, mehrere Instanzen desselben Werts enthalten. Das Verständnis, wie Duplikate in Tupeln gespeichert und abgerufen werden, ist für die Datenanalyse und -manipulation von entscheidender Bedeutung.

Beginnen wir damit, ein Tupel mit Duplikaten zu erstellen:

my_tuple = (1, 2, 2, 3, 4, 4, 4, 5)
print(my_tuple)

Erstellen Sie mit dem VS Code-Editor eine Datei namens duplicates.py in Ihrem ~/project-Verzeichnis. Kopieren Sie den obigen Code und fügen Sie ihn in die Datei ein.

Führen Sie jetzt das Python-Skript mit dem folgenden Befehl im Terminal aus:

python duplicates.py

Sie sollten die folgende Ausgabe sehen:

(1, 2, 2, 3, 4, 4, 4, 5)

Wie Sie sehen können, enthält das Tupel my_tuple Duplikate (2 und 4). Tupel behalten die Reihenfolge und Häufigkeit der Elemente, einschließlich Duplikaten, bei.

Lassen Sie uns nun die Duplikate über Indizierung zugreifen:

my_tuple = (1, 2, 2, 3, 4, 4, 4, 5)
print(my_tuple[1])
print(my_tuple[2])
print(my_tuple[4])
print(my_tuple[5])
print(my_tuple[6])

Fügen Sie diese Zeilen zu Ihrer duplicates.py-Datei hinzu. Die vollständige Datei sollte jetzt wie folgt aussehen:

my_tuple = (1, 2, 2, 3, 4, 4, 4, 5)
print(my_tuple)
print(my_tuple[1])
print(my_tuple[2])
print(my_tuple[4])
print(my_tuple[5])
print(my_tuple[6])

Führen Sie das Skript erneut aus:

python duplicates.py

Die Ausgabe wird sein:

(1, 2, 2, 3, 4, 4, 4, 5)
2
2
4
4
4

Dies zeigt, dass Sie jedes Duplikat einzeln über seinen Index zugreifen können.

Tupel erlauben Duplikate und behalten die Reihenfolge bei, in der die Elemente ursprünglich hinzugefügt wurden. Dies unterscheidet sich von Mengen (sets), die keine Duplikate erlauben. Im nächsten Schritt werden wir die Länge eines Tupels mit der Länge seiner Mengendarstellung vergleichen, um zu verstehen, wie Duplikate die Größe beeinflussen.

Vergleich von len() mit len(set())

In diesem Schritt vergleichen wir die len()-Funktion, die auf ein Tupel angewendet wird, mit der len()-Funktion, die auf die Mengendarstellung desselben Tupels angewendet wird. Dies verdeutlicht, wie Tupel und Mengen (sets) Duplikate unterschiedlich behandeln.

Zunächst sollten wir uns daran erinnern, dass Tupel Duplikate erlauben, während Mengen dies nicht tun. Eine Menge enthält nur eindeutige Elemente. Wenn wir also ein Tupel in eine Menge umwandeln, werden die Duplikate entfernt.

Wir verwenden das gleiche my_tuple wie im vorherigen Schritt:

my_tuple = (1, 2, 2, 3, 4, 4, 4, 5)
print("Tuple:", my_tuple)
print("Length of tuple:", len(my_tuple))

my_set = set(my_tuple)
print("Set:", my_set)
print("Length of set:", len(my_set))

Fügen Sie diese Zeilen zu Ihrer duplicates.py-Datei hinzu. Die vollständige Datei sollte jetzt wie folgt aussehen:

my_tuple = (1, 2, 2, 3, 4, 4, 4, 5)
print("Tuple:", my_tuple)
print("Length of tuple:", len(my_tuple))

my_set = set(my_tuple)
print("Set:", my_set)
print("Length of set:", len(my_set))

Führen Sie das Skript aus:

python duplicates.py

Die Ausgabe wird sein:

Tuple: (1, 2, 2, 3, 4, 4, 4, 5)
Length of tuple: 8
Set: {1, 2, 3, 4, 5}
Length of set: 5

Wie Sie sehen können, beträgt die Länge des Tupels 8, da es 8 Elemente, einschließlich Duplikaten, enthält. Die Länge der Menge beträgt hingegen 5, da sie nur die eindeutigen Elemente aus dem Tupel enthält.

Dieser Vergleich zeigt, dass len(tuple) alle Elemente, einschließlich Duplikaten, zählt, während len(set(tuple)) nur die eindeutigen Elemente zählt. Diese Unterscheidung ist wichtig, wenn Sie die Häufigkeit von Elementen in einem Datensatz analysieren müssen.

Im nächsten Schritt verwenden wir das collections.Counter-Objekt, um die Anzahl der Vorkommen jedes Elements im Tupel zu zählen.

Verwendung von collections.Counter für Tupel

In diesem Schritt verwenden wir das collections.Counter-Objekt, um effizient die Anzahl der Vorkommen jedes Elements in einem Tupel zu zählen. Die Counter-Klasse ist ein leistungsstarkes Werkzeug für die Häufigkeitsanalyse und bietet eine bequeme Möglichkeit, festzustellen, wie oft jedes eindeutige Element in einem Tupel vorkommt.

Zunächst müssen Sie die Counter-Klasse aus dem collections-Modul importieren. Dann können Sie ein Counter-Objekt aus Ihrem Tupel erstellen.

Wir verwenden das gleiche my_tuple wie in den vorherigen Schritten:

from collections import Counter

my_tuple = (1, 2, 2, 3, 4, 4, 4, 5)
print("Tuple:", my_tuple)

element_counts = Counter(my_tuple)
print("Element counts:", element_counts)

Fügen Sie diese Zeilen zu Ihrer duplicates.py-Datei hinzu. Die vollständige Datei sollte jetzt wie folgt aussehen:

from collections import Counter

my_tuple = (1, 2, 2, 3, 4, 4, 4, 5)
print("Tuple:", my_tuple)

element_counts = Counter(my_tuple)
print("Element counts:", element_counts)

Führen Sie das Skript aus:

python duplicates.py

Die Ausgabe wird sein:

Tuple: (1, 2, 2, 3, 4, 4, 4, 5)
Element counts: Counter({4: 3, 2: 2, 1: 1, 3: 1, 5: 1})

Das Counter-Objekt element_counts speichert jetzt die Anzahl der Vorkommen jedes Elements im Tupel. Beispielsweise zeigt 4: 3, dass die Zahl 4 dreimal im Tupel vorkommt.

Sie können die Anzahl der Vorkommen eines bestimmten Elements mit der folgenden Syntax abrufen:

from collections import Counter

my_tuple = (1, 2, 2, 3, 4, 4, 4, 5)
element_counts = Counter(my_tuple)

print("Count of 2:", element_counts[2])
print("Count of 4:", element_counts[4])

Fügen Sie diese Zeilen zu Ihrer duplicates.py-Datei hinzu. Die vollständige Datei sollte jetzt wie folgt aussehen:

from collections import Counter

my_tuple = (1, 2, 2, 3, 4, 4, 4, 5)
print("Tuple:", my_tuple)

element_counts = Counter(my_tuple)
print("Element counts:", element_counts)

print("Count of 2:", element_counts[2])
print("Count of 4:", element_counts[4])

Führen Sie das Skript erneut aus:

python duplicates.py

Die Ausgabe wird sein:

Tuple: (1, 2, 2, 3, 4, 4, 4, 5)
Element counts: Counter({4: 3, 2: 2, 1: 1, 3: 1, 5: 1})
Count of 2: 2
Count of 4: 3

Die collections.Counter-Klasse bietet eine bequeme und effiziente Möglichkeit, die Anzahl der Vorkommen von Elementen in einem Tupel zu zählen und ist somit ein wertvolles Werkzeug für die Datenanalyse und -manipulation.

Zusammenfassung

In diesem Lab (Praktikum) haben wir zunächst untersucht, wie Tupel Duplikate behandeln. Wir haben gezeigt, dass Tupel, im Gegensatz zu Mengen (sets), mehrere Instanzen desselben Werts enthalten können, wobei die Reihenfolge und die Häufigkeit der Elemente beibehalten werden. Wir haben ein Tupel mit doppelten Werten erstellt und diese Duplikate über Indizierung (indexing) angesprochen, was bestätigt hat, dass jedes Duplikat einzeln zugänglich ist.

Der nächste Schritt besteht darin, die Länge eines Tupels mit der Länge seiner Mengendarstellung zu vergleichen, um zu verstehen, wie Duplikate die Größe beeinflussen. Dieser Schritt wurde in dem bereitgestellten Inhalt nicht abgeschlossen.