Kursinnehåll
Introduktion till Python
Introduktion till Python
Tupler och Tuppelmetoder
Tupler
I detta kapitel utforskar vi tupler, en annan grundläggande datastruktur i Python som är idealisk för hantering av oföränderliga (icke-ändringsbara) dataserier. Tupler skulle vara otroligt användbara i vårt scenario med livsmedelsbutiken.
Till exempel kan vi behöva lagra poster med produktdetaljer som sällan ändras eller säkerställa att känslig information, såsom produktens ID
-nummer, förblir konsekvent och oförändrad under hela programmets körning.
Se när Alex demonstrerar hur man arbetar med tupler för att säkerställa stabil datahantering i vår livsmedelsbutik:
Grundläggande om tupler
Tupler i Python är en enkel men kraftfull datastruktur, liknande listor men utformade för oföränderlighet.
Här är en översikt över deras viktigaste egenskaper:
Skapande
Tupler skapas genom att omsluta kommaseparerade värden med parenteser ()
(till skillnad från listor, som skapas med hakparenteser []
).
Ordning
Precis som listor behåller elementen i en tuppel en specifik ordning. Denna ordning är fast och kan inte ändras, vilket kan vara användbart för dataintegritet.
Oföränderlighet (Icke-ändringsbarhet)
När en tuppel har skapats kan dess element inte ändras, läggas till eller tas bort. Denna oföränderlighet gör tupler till ett pålitligt val för att lagra data som inte ska ändras under programmets livscykel.
Tillåter dubbletter
Likt listor kan tupler innehålla flera instanser av samma värde, vilket gör dem lämpliga för att lagra upprepande data på ett säkert och effektivt sätt. Dock är det generellt ovanligt att hitta dubbletter i tupler för typiska användningsområden.
Exempel
Den främsta skillnaden mellan tupler och listor i Python ligger i deras föränderlighet. Tupler skapas med parenteser ()
och är oföränderliga, vilket innebär att de inte kan ändras efter att de har skapats.
Låt oss titta närmare på detta.
Tänk på en tuppel som kategoriserar olika avdelningar i en livsmedelsbutik — en uppsättning värden som sannolikt inte förändras ofta:
# 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)
Element i en tuple kan nås med indexnummer, på samma sätt som med listor. Denna indexering fungerar på samma sätt som för listor och gör det möjligt att hämta valfritt objekt baserat på dess 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])
Tupler kan innehålla vilken typ av objekt som helst, precis som listor. De kan även inkludera muterbara objekt såsom nästlade listor (eller ordböcker, vilket vi kommer att diskutera senare). Även om tupler är oföränderliga kan de muterbara objekten inuti dem fortfarande ändras.
Ta tuplen apple_details
– om vi behöver uppdatera ett tillstånd i listan som innehåller delstatsnamn, kan vi göra det genom att använda nivå 1- och nivå 2-indexering, precis som vi gjorde med nästlade listor.
# 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)
Tuplens metoder
Även om tupler inte stöder metoder som ändrar deras innehåll, finns det ändå några inbyggda metoder som hjälper till att hantera och använda dem effektivt. Här är de två inbyggda metoder du kan använda med tupler:
count()
: returnerar antalet gånger ett angivet värde förekommer i tuplen;index()
: söker i tuplen efter ett angivet värde och returnerar indexpositionen där det först hittades.
Observera
Samma metoder kan även användas med listor.
# 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. Vad blir utmatningen av följande Python-kod?
2. Vilken kodrad hittar korrekt indexpositionen för beskrivningen "Baby Spinach"
i tuplen spinachDetails
?
Tack för dina kommentarer!