Kursinhalt
Einführung in Python
Einführung in Python
Tupel und Tupel-Methoden
Tupel
In diesem Kapitel behandeln wir Tupel, eine weitere grundlegende Python-Datenstruktur, die sich ideal für die Verwaltung von unveränderlichen (nicht änderbaren) Datenfolgen eignet. Tupel erweisen sich in unserem Supermarkt-Szenario als äußerst nützlich.
Beispielsweise könnten wir Datensätze mit Produktdetails speichern, die sich selten ändern, oder sicherstellen, dass sensible Informationen wie Produkt-ID
-Nummern während der gesamten Programmausführung konsistent und unverändert bleiben.
Sehen Sie, wie Alex demonstriert, wie man mit Tupeln arbeitet, um eine stabile Datenverwaltung im Kontext unseres Supermarkts zu gewährleisten:
Grundlagen der Tupel
Tupel in Python sind eine einfache, aber leistungsfähige Datenstruktur, ähnlich wie Listen, jedoch für Unveränderlichkeit konzipiert.
Hier eine Übersicht ihrer wichtigsten Eigenschaften:
Erstellung
Tupel werden erstellt, indem durch Kommas getrennte Werte in runde Klammern ()
eingeschlossen werden (im Gegensatz zu Listen, die durch eckige Klammern []
erstellt werden).
Reihenfolge
Wie bei Listen behalten die Elemente in einem Tupel eine bestimmte Reihenfolge bei. Diese Reihenfolge ist fest und kann nicht geändert werden, was für die Datenintegrität hilfreich sein kann.
Unveränderlichkeit
Sobald ein Tupel erstellt wurde, können seine Elemente nicht geändert, ergänzt oder entfernt werden. Diese Unveränderlichkeit macht Tupel zu einer zuverlässigen Wahl für die Speicherung von Daten, die während des gesamten Programmablaufs nicht verändert werden sollen.
Zulassen von Duplikaten
Wie bei Listen können Tupel mehrere Instanzen desselben Werts enthalten, was sie für die sichere und effiziente Speicherung von wiederholenden Daten geeignet macht. Allerdings ist es in typischen Anwendungsfällen eher unüblich, Duplikate in Tupeln zu finden.
Beispiele
Der Hauptunterschied zwischen Tupeln und Listen in Python liegt also in ihrer Veränderlichkeit. Tupel werden mit runden Klammern ()
erstellt und sind unveränderlich, das heißt, sie können nach ihrer Erstellung nicht geändert werden.
Schauen wir uns das genauer an.
Betrachten Sie ein Tupel, das verschiedene Bereiche in einem Supermarkt kategorisiert – eine Menge von Werten, die sich wahrscheinlich nicht häufig ändern:
# Define a tuple with grocery store categories grocery_aisles = ("Produce", "Dairy", "Bakery", "Meat", "Frozen Foods") # Display a tuple on the screen print("Grocery Aisles:", grocery_aisles)
Elemente innerhalb eines Tupels können mit Indexnummern abgerufen werden, ähnlich wie bei Listen. Diese Indizierung funktioniert genauso wie bei Listen und ermöglicht das Abrufen jedes Elements anhand seiner Position:
# Define a tuple with multiple data types apple_details = ("apple", 34, True, 1.99, "Fuji") # Get an element of a tuple by its index print("Apple Type:", apple_details[4])
Tupel können beliebige Objekttypen enthalten, genau wie Listen. Sie können auch veränderbare Objekte wie verschachtelte Listen (oder Dictionaries, auf die wir später noch eingehen) beinhalten. Obwohl Tupel unveränderlich sind, können die veränderbaren Objekte innerhalb von ihnen dennoch geändert werden.
Nehmen wir das Tupel apple_details
– wenn wir einen Status in der Liste mit den Bundesstaatennamen aktualisieren müssen, können wir dies durch Indexierung auf Ebene 1 und Ebene 2 erreichen, genau wie bei verschachtelten Listen.
# Tuple containing various data types and a nested list apple_details = ("apple", 34, True, 1.99, "Fuji", ["Washington", "California", "Michigan"]) print(apple_details) # Updating the mutable python list even while nested in an immutable data type (tuple) apple_details[5][2] = "Pennsylvania" print(apple_details)
Tupel-Methoden
Obwohl Tupel keine Methoden unterstützen, die ihren Inhalt verändern, bieten sie dennoch einige eingebaute Methoden, um sie effektiv zu verwalten und zu nutzen. Hier sind die beiden eingebauten Methoden, die Sie mit Tupeln verwenden können:
count()
: Gibt die Anzahl zurück, wie oft ein bestimmter Wert im Tupel vorkommt;index()
: Durchsucht das Tupel nach einem bestimmten Wert und gibt die Indexposition zurück, an der dieser Wert erstmals gefunden wurde.
Hinweis
Dieselben Methoden können auch mit Listen verwendet werden.
# Example tuple containing a mix of integers and strings fruits = ("apple", "banana", "cherry", "apple", "banana", "cherry", "apple") # Use the `count()` method to determine how many times "apple" appears in the tuple apple_count = fruits.count("apple") print("Number of times 'apple' appears:", apple_count) # Use the `index()` method to find the first occurrence of "cherry" in the tuple cherry_index = fruits.index("cherry") print("The first occurrence of 'cherry' is at index:", cherry_index)
1. Was ist die Ausgabe des folgenden Python-Codes?
2. Welche Codezeile ermittelt korrekt die Indexposition der Beschreibung "Baby Spinach"
im Tupel spinachDetails
?
Danke für Ihr Feedback!