Tuple-bewerkingen
Hoewel tuples zelf niet gewijzigd kunnen worden, biedt Python bewerkingen om ze effectief te maken en te combineren.
Aanmaken
De functie tuple()
maakt een tuple van een iterabel object (strings, sets, lijsten), waardoor het mogelijk is om lijsten of andere iterabelen om te zetten naar tuples.
Concatenatie
Je kunt twee of meer tuples samenvoegen tot een nieuwe tuple met behulp van de +
-operator, zodat je gegevens opeenvolgend kunt combineren zonder de oorspronkelijke tuples te wijzigen.
Opmerking
Onthoud dat je voor het gebruik van tuple-methoden, zoals
count()
enindex()
, dotnotatie moet gebruiken, net zoals bij lijstmethoden.
Laten we onderzoeken hoe we de tuple-constructor, concatenatie en tuple-methoden kunnen toepassen in een praktische toepassing.
Voorbeeldtoepassing
Stel je hebt lijsten waarin artikelen worden opgeslagen die in de afgelopen 3 maanden in de aanbieding zijn geweest. Je moet deze converteren naar tuples, de tuples samenvoegen en vervolgens bepalen hoe vaak een artikel in het afgelopen kwartaal in de aanbieding is geweest. Daarnaast moet je de indexpositie bepalen om de eerste keer dat een artikel voorkomt te lokaliseren.
# Define lists with items that have been put on sale, recording each sale occurrence for different months janSales_list = ["apples", "oranges", "apples"] febSales_list = ["bananas", "oranges", "bananas"] marSales_list = ["apples", "bananas", "apples"] # Convert the lists to tuples to ensure immutability (unchangeable) janSales = tuple(janSales_list) febSales = tuple(febSales_list) marSales = tuple(marSales_list) # Concatenate all monthly sales into a single tuple for the quarter quarterlySales = janSales + febSales + marSales print("Consolidated quarterly sales:", quarterlySales) # Use the `count()` method to determine how many times "apples" have been on sale during the quarter apples_sale_count = quarterlySales.count("apples") print("Apples have been on sale:", apples_sale_count, "times.") # Use the `index()` method to find the first occurrence of "apples" in the quarterly sales first_apple_sale_index = quarterlySales.index("apples") print("The first sale of apples this quarter was at index:", first_apple_sale_index)
Swipe to start coding
Beheer de inhoud van een supermarktstelling met behulp van tuples, waarbij gegevensintegriteit wordt gewaarborgd en enkele analytische controles worden uitgevoerd.
- Zet de lijst
shelf1_update
met nieuwe items om naar een tuple genaamdshelf1_update_tuple
. - Concateneer
shelf1_update_tuple
met de bestaande tupleshelf1
om een nieuwe tupleshelf1_concat
te maken. - Tel hoe vaak
"celery"
voorkomt inshelf1_concat
en sla het resultaat op incelery_count
. - Bepaal de index van het eerste voorkomen van
"celery"
inshelf1_concat
en sla deze op incelery_index
.
Uitvoervereisten
- Print de bijgewerkte inhoud van de stelling:
"Updated Shelf #1: <$shelf1_concat>"
. - Print het aantal keren dat
"celery"
voorkomt:"Number of Celery: <$celery_count>"
. - Print de index van het eerste voorkomen van
"celery"
:"Celery Index: <$celery_index>"
.
Oplossing
Bedankt voor je feedback!