Operazioni sulle Tuple

Le tuple sono immutabili, ma Python offre diverse operazioni che permettono di crearli, comporli e analizzarli in modo molto efficace. Questo le rende strumenti ideali per mantenere dati stabili — come le informazioni dei prodotti su uno scaffale del negozio di alimentari.


🧱 Creazione con tuple()

La funzione tuple() permette di convertire qualsiasi iterabile (liste, set, stringhe…) in una tupla. È particolarmente utile quando vogliamo rendere un insieme di dati immutabile.


➕ Concatenazione di tuple

Le tuple possono essere unite utilizzando l’operatore +, creando una nuova tupla senza modificare le originali.


ℹ Metodi utili per le tuple

Le tuple supportano due metodi fondamentali:

  • count(value) — quante volte un elemento compare nella tupla
  • index(value) — la posizione della prima occorrenza

La sintassi usa la dot notation, esattamente come nelle liste.


📌 Applicazione pratica

Hai tre liste di articoli in offerta nei mesi di gennaio, febbraio e marzo. L’obiettivo è:

  1. convertirle in tuple,
  2. concatenarle,
  3. analizzarne il contenuto.

Esempio:

janSales_list = ["apples", "oranges", "apples"]
febSales_list = ["bananas", "oranges", "bananas"]
marSales_list = ["apples", "bananas", "apples"]

# Convert to tuples
janSales = tuple(janSales_list)
febSales = tuple(febSales_list)
marSales = tuple(marSales_list)

# Concatenate
quarterlySales = janSales + febSales + marSales
print("Consolidated quarterly sales:", quarterlySales)

# Count occurrences
apples_sale_count = quarterlySales.count("apples")
print("Apples have been on sale:", apples_sale_count, "times.")

# Find index
first_apple_sale_index = quarterlySales.index("apples")
print("The first sale of apples this quarter was at index:", first_apple_sale_index)

🧪 Compito: Gestione dello scaffale del negozio

Devi gestire il contenuto di uno scaffale usando tuple, garantendo integrità e coerenza nei dati.

Istruzioni

  1. Convertire la lista shelf1_update in una tupla chiamata shelf1_update_tuple
  2. Concatenare shelf1_update_tuple con la tupla esistente shelf1 per creare shelf1_concat
  3. Contare quante volte "celery" appare in shelf1_concat → memorizza in celery_count
  4. Trovare l’indice della prima occorrenza di "celery" → memorizza in celery_index

📤 Requisiti di output

  • Updated Shelf #1: <shelf1_concat>
  • Number of Celery: <celery_count>
  • Celery Index: <celery_index>

In questo capitolo hai imparato:

Creazione di tuple

Usa il costruttore tuple() per trasformare un iterabile (lista, stringa, set) in una tupla immutabile.

Concatenazione di tuple

Unisci due o più tuple con l’operatore +, ottenendo sempre nuove tuple senza modificare quelle originali.

Metodi delle tuple

count(x) restituisce quante volte l’elemento x compare nella tupla. index(x) restituisce l’indice della prima occorrenza di x.

Applicazione pratica

Converti liste in tuple, concatena tuple mensili per ottenere i dati trimestrali, quindi usa count e index per analizzare la frequenza e la posizione di un elemento (ad esempio “apples” o “celery”).

Esempio

Da liste di vendite mensili a una tupla trimestrale, Conteggio totale delle vendite di un prodotto, Ricerca della prima vendita tramite index().