Tuplet ja Tuplen Metodit
Tuplet
Tässä luvussa tarkastellaan tupleja, toista Pythonin perusrakennetta, joka soveltuu erinomaisesti muuttumattomien (ei-muokattavien) tietojonojen käsittelyyn. Tuplet osoittautuvat erittäin hyödyllisiksi ruokakauppaskenaariossamme.
Esimerkiksi saatamme tarvita tuotetietojen tallentamista, jotka harvoin muuttuvat, tai haluamme varmistaa, että arkaluonteiset tiedot, kuten tuotteen ID-numerot, pysyvät johdonmukaisina ja muuttumattomina ohjelman suorituksen ajan.
Katso, kuinka Alex havainnollistaa tuplien käyttöä vakaaseen tiedonhallintaan ruokakauppaympäristössämme:
Tuplien perusteet
Tuplet Pythonissa ovat yksinkertainen mutta tehokas tietorakenne, joka muistuttaa listoja, mutta ne on suunniteltu muuttumattomiksi.
Tässä ovat niiden keskeiset ominaisuudet:
Luominen
Tuplet luodaan sulkemalla pilkulla erotetut arvot sulkeisiin () (toisin kuin listat, jotka luodaan sulkemalla pilkulla erotetut arvot hakasulkeisiin []).
Järjestys
Kuten listoissa, myös tuplessa alkioilla on tietty järjestys. Tämä järjestys on kiinteä eikä sitä voi muuttaa, mikä voi olla hyödyllistä tietojen eheyden kannalta.
Muuttumattomuus
Kun tupla on luotu, sen alkioita ei voi muuttaa, lisätä eikä poistaa. Tämä muuttumattomuus tekee tuplista luotettavan valinnan tiedon tallentamiseen, jota ei tulisi muuttaa ohjelman elinkaaren aikana.
Duplikaattien salliminen
Kuten listoissa, myös tuplessa voi olla useita samoja arvoja, mikä tekee niistä sopivia toistuvan tiedon turvalliseen ja tehokkaaseen tallentamiseen. On kuitenkin yleensä harvinaista, että tuplissa esiintyy duplikaatteja tyypillisissä käyttötapauksissa.
Esimerkkejä
Tuplien ja listojen ensisijainen ero Pythonissa liittyy niiden muokattavuuteen. Tuplet luodaan sulkeilla () ja ovat muuttumattomia, eli niitä ei voi muokata luomisen jälkeen.
Tarkastellaan tätä tarkemmin.
Kuvitellaan tupla, joka luokittelee ruokakaupan eri osastot — joukko arvoja, jotka eivät todennäköisesti muutu usein:
12345# 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)
Tuplen alkioihin pääsee käsiksi indeksinumeroiden avulla, samalla tavalla kuin listoissa. Tämä indeksointi toimii kuten listoissa, mahdollistaen minkä tahansa alkion hakemisen sen sijainnin perusteella:
12345# 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])
Tuples voi sisältää minkä tahansa tyyppisiä olioita, aivan kuten listatkin. Ne voivat sisältää myös muuttuvia olioita kuten sisäkkäisiä listoja (tai sanakirjoja, joista keskustellaan myöhemmin). Vaikka tuplet ovat muuttumattomia, niiden sisällä olevia muuttuvia olioita voidaan silti muokata.
Otetaan esimerkiksi apple_details-tuple – jos halutaan päivittää osavaltio listassa, joka sisältää osavaltioiden nimet, tämä onnistuu käyttämällä tason 1 ja tason 2 indeksointia, kuten tehtiin sisäkkäisten listojen kanssa.
123456# 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)
Tuplen metodit
Vaikka tuplet eivät tue metodeja, jotka muuttavat niiden sisältöä, niillä on silti muutamia sisäänrakennettuja metodeja, jotka auttavat niiden hallinnassa ja hyödyntämisessä. Tässä ovat kaksi sisäänrakennettua metodia, joita voit käyttää tuplien kanssa:
count(): palauttaa, kuinka monta kertaa tietty arvo esiintyy tuplessa;index(): etsii tuplesta tietyn arvon ja palauttaa sen ensimmäisen esiintymän indeksin.
Huom
Samoja metodeja voidaan käyttää myös listojen kanssa.
12345678910# 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. Mikä on seuraavan Python-koodin tuloste?
2. Mikä seuraavista koodiriveistä hakee oikein kuvauksen "Baby Spinach" sijainnin spinachDetails-tuplasta?
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
What are some common use cases for tuples in real-world Python programs?
Can you explain more about the difference between mutable and immutable data structures?
How do I choose between using a tuple or a list in my code?
Mahtavaa!
Completion arvosana parantunut arvoon 2.08
Tuplet ja Tuplen Metodit
Pyyhkäise näyttääksesi valikon
Tuplet
Tässä luvussa tarkastellaan tupleja, toista Pythonin perusrakennetta, joka soveltuu erinomaisesti muuttumattomien (ei-muokattavien) tietojonojen käsittelyyn. Tuplet osoittautuvat erittäin hyödyllisiksi ruokakauppaskenaariossamme.
Esimerkiksi saatamme tarvita tuotetietojen tallentamista, jotka harvoin muuttuvat, tai haluamme varmistaa, että arkaluonteiset tiedot, kuten tuotteen ID-numerot, pysyvät johdonmukaisina ja muuttumattomina ohjelman suorituksen ajan.
Katso, kuinka Alex havainnollistaa tuplien käyttöä vakaaseen tiedonhallintaan ruokakauppaympäristössämme:
Tuplien perusteet
Tuplet Pythonissa ovat yksinkertainen mutta tehokas tietorakenne, joka muistuttaa listoja, mutta ne on suunniteltu muuttumattomiksi.
Tässä ovat niiden keskeiset ominaisuudet:
Luominen
Tuplet luodaan sulkemalla pilkulla erotetut arvot sulkeisiin () (toisin kuin listat, jotka luodaan sulkemalla pilkulla erotetut arvot hakasulkeisiin []).
Järjestys
Kuten listoissa, myös tuplessa alkioilla on tietty järjestys. Tämä järjestys on kiinteä eikä sitä voi muuttaa, mikä voi olla hyödyllistä tietojen eheyden kannalta.
Muuttumattomuus
Kun tupla on luotu, sen alkioita ei voi muuttaa, lisätä eikä poistaa. Tämä muuttumattomuus tekee tuplista luotettavan valinnan tiedon tallentamiseen, jota ei tulisi muuttaa ohjelman elinkaaren aikana.
Duplikaattien salliminen
Kuten listoissa, myös tuplessa voi olla useita samoja arvoja, mikä tekee niistä sopivia toistuvan tiedon turvalliseen ja tehokkaaseen tallentamiseen. On kuitenkin yleensä harvinaista, että tuplissa esiintyy duplikaatteja tyypillisissä käyttötapauksissa.
Esimerkkejä
Tuplien ja listojen ensisijainen ero Pythonissa liittyy niiden muokattavuuteen. Tuplet luodaan sulkeilla () ja ovat muuttumattomia, eli niitä ei voi muokata luomisen jälkeen.
Tarkastellaan tätä tarkemmin.
Kuvitellaan tupla, joka luokittelee ruokakaupan eri osastot — joukko arvoja, jotka eivät todennäköisesti muutu usein:
12345# 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)
Tuplen alkioihin pääsee käsiksi indeksinumeroiden avulla, samalla tavalla kuin listoissa. Tämä indeksointi toimii kuten listoissa, mahdollistaen minkä tahansa alkion hakemisen sen sijainnin perusteella:
12345# 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])
Tuples voi sisältää minkä tahansa tyyppisiä olioita, aivan kuten listatkin. Ne voivat sisältää myös muuttuvia olioita kuten sisäkkäisiä listoja (tai sanakirjoja, joista keskustellaan myöhemmin). Vaikka tuplet ovat muuttumattomia, niiden sisällä olevia muuttuvia olioita voidaan silti muokata.
Otetaan esimerkiksi apple_details-tuple – jos halutaan päivittää osavaltio listassa, joka sisältää osavaltioiden nimet, tämä onnistuu käyttämällä tason 1 ja tason 2 indeksointia, kuten tehtiin sisäkkäisten listojen kanssa.
123456# 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)
Tuplen metodit
Vaikka tuplet eivät tue metodeja, jotka muuttavat niiden sisältöä, niillä on silti muutamia sisäänrakennettuja metodeja, jotka auttavat niiden hallinnassa ja hyödyntämisessä. Tässä ovat kaksi sisäänrakennettua metodia, joita voit käyttää tuplien kanssa:
count(): palauttaa, kuinka monta kertaa tietty arvo esiintyy tuplessa;index(): etsii tuplesta tietyn arvon ja palauttaa sen ensimmäisen esiintymän indeksin.
Huom
Samoja metodeja voidaan käyttää myös listojen kanssa.
12345678910# 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. Mikä on seuraavan Python-koodin tuloste?
2. Mikä seuraavista koodiriveistä hakee oikein kuvauksen "Baby Spinach" sijainnin spinachDetails-tuplasta?
Kiitos palautteestasi!