Contenuti del Corso
Introduzione a Python
Introduzione a Python
Tuple e Metodi delle Tuple
Tuple
In questo capitolo, esploriamo i tuple, un'altra struttura dati fondamentale di Python ideale per gestire sequenze di dati immutabili (non modificabili). I tuple si rivelerebbero incredibilmente utili nel nostro scenario del negozio di alimentari.
Ad esempio, potremmo aver bisogno di mantenere registri dei dettagli dei prodotti che raramente cambiano o garantire che informazioni sensibili, come i numeri di ID
dei prodotti, rimangano coerenti e inalterati durante l'esecuzione di un programma.
Guarda come Alex dimostra come lavorare con i tuple per garantire una gestione stabile dei dati nel contesto del nostro negozio di alimentari:
Fondamenti delle Tuple
Le tuple in Python sono una struttura dati di base ma potente, simile alle liste ma progettata per l'immutabilità.
Ecco una panoramica delle loro caratteristiche principali:
Creazione
Le tuple sono create racchiudendo valori separati da virgole tra parentesi ()
(a differenza delle liste, che sono create racchiudendo valori separati da virgole tra parentesi quadre []
).
Ordinamento
Simile alle liste, gli elementi in una tupla mantengono un ordine specifico. Questo ordine è fisso e non può essere cambiato, il che può essere utile per l'integrità dei dati.
Immutabilità (Inalterabilità)
Una volta creata una tupla, i suoi elementi non possono essere cambiati, aggiunti o rimossi. Questa immutabilità rende le tuple una scelta affidabile per memorizzare dati che non dovrebbero essere alterati durante il ciclo di vita del programma.
Permettere Duplicati
Simile alle liste, le tuple possono contenere più istanze dello stesso valore, rendendole adatte per memorizzare dati ripetitivi in modo sicuro ed efficiente. Tuttavia, è generalmente raro trovare duplicati nelle tuple per casi d'uso tipici.
Esempi
Quindi, la differenza principale tra tuple e liste in Python risiede nella loro mutabilità. Le tuple sono create usando parentesi ()
e sono immutabili, il che significa che non possono essere modificate dopo la creazione.
Esaminiamo questo in modo più dettagliato.
Considera una tupla che categorizza diverse sezioni in un negozio di alimentari — un insieme di valori che è improbabile che cambi frequentemente:
# 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)
Gli elementi all'interno di una tupla possono essere accessibili utilizzando i numeri di indice, simile alle liste. Questo indicizzazione funziona allo stesso modo delle liste, permettendoti di recuperare qualsiasi elemento in base alla sua posizione:
# 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])
Le tuple possono contenere qualsiasi tipo di oggetto, proprio come le liste. Possono anche includere oggetti mutabili come liste annidate (o dizionari, di cui parleremo un po' più avanti). Sebbene le tuple siano immutabili, gli oggetti mutabili al loro interno possono ancora essere modificati.
Prendi la tupla apple_details
- se abbiamo bisogno di aggiornare uno stato nella lista contenente i nomi degli stati, possiamo farlo utilizzando l'indicizzazione di livello 1 e livello 2, proprio come abbiamo fatto con le liste annidate.
# 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)
Metodi delle Tuple
Anche se le tuple non supportano metodi che alterano il loro contenuto, offrono comunque alcuni metodi integrati per aiutare a gestirle e utilizzarle efficacemente. Ecco i due metodi integrati che puoi usare con le tuple:
count()
: restituisce il numero di volte che un valore specificato appare nella tupla;index()
: cerca nella tupla un valore specificato e restituisce la posizione dell'indice in cui è stato trovato per la prima volta.
Nota
Gli stessi metodi possono essere utilizzati anche con le liste.
# 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. Quale sarà l'output del seguente codice Python?
2. Quale riga di codice trova correttamente la posizione dell'indice della descrizione "Baby Spinach"
all'interno della tupla spinachDetails
?
Grazie per i tuoi commenti!