Operazioni di Base sulle Tuple in Python

Nella lezione precedente abbiamo visto le caratteristiche principali delle tuple in Python. In questa lezione vedremo le operazioni di base che è possibile effettuare sulle tuple.

Dal momento che una tupla è un oggetto immutabile, non è possibile modificare il suo contenuto. Tuttavia, è possibile creare nuove tuple a partire da una tupla esistente. Vediamo come.

Creazione di una Tupla a Partire da un'altra Tupla o da una Lista

Il contenuto di una tupla non può essere modificato. Tuttavia possiamo creare una nuova tupla a partire da una tupla esistente. Per fare ciò, possiamo utilizzare la funzione tuple che abbiamo visto in precedenza:

tupla = (1, 2, 3)
nuova_tupla = tuple(tupla)

La sintassi di sopra funziona proprio perché, come vedremo, una tupla è anche un iterabile.

Analogamente, possiamo creare una tupla a partire da una lista:

lista = [1, 2, 3]
tupla = tuple(lista)

Quest'ultima tecnica risulta particolarmente utile nel caso in cui vogliamo creare una tupla a partire da una esistente ma vogliamo aggiungere o rimuovere elementi. In questo caso, possiamo creare una lista, aggiungere o rimuovere elementi e poi convertire la lista in una tupla.

Ad esempio, supponiamo di avere la tupla seguente:

>>> tupla = (1, 2, 3)

Se volessimo aggiungere un elemento alla tupla, dovremmo creare una nuova tupla a partire da quella esistente. Per fare ciò, possiamo creare una lista, aggiungere l'elemento e poi convertire la lista in una tupla:

>>> lista = list(tupla)
>>> lista.append(4)
>>> tupla = tuple(lista)
>>> tupla
(1, 2, 3, 4)

Lunghezza di una Tupla

Una tupla è una sequenza ordinata e immutabile di elementi. Pertanto una tupla avrà una dimensione o lunghezza fissata al momento della sua creazione che non varierà nel tempo.

Per conoscere la sua lunghezza basta utilizzare la funzione len:

>>> tupla = (1, 2, 3)
>>> len(tupla)
3
Definizione

Lunghezza di una Tupla

In Python per conoscere la lunghezza di una tupla si utilizza la funzione len:

lunghezza = len(t)

Concatenazione di Tuple

Come per le liste, è possibile concatenare due tuple utilizzando l'operatore +. In questo modo si può ottenere una nuova tupla a partire da due o più tuple.

Supponiamo, ad esempio, di avere le tre tuple seguenti:

>>> tupla1 = (1, 2, 3)
>>> tupla2 = (4, 5, 6)
>>> tupla3 = (7, 8, 9)

Per concatenare le tre tuple possiamo scrivere:

>>> nuova_tupla = tupla1 + tupla2 + tupla3
>>> nuova_tupla
(1, 2, 3, 4, 5, 6, 7, 8, 9)

Ovviamente la concatenazione funziona soltanto se applicata tra tuple. Non è possibile utilizzare la concatenazione tra una tupla e una lista, ad esempio.

Definizione

Concatenazione di Tuple

In Python è possibile concatenare due o più tuple usando l'operatore +. La sintassi è la seguente:

nuova_tupla = tupla1 + tupla2

Il risultato della concatenazione è una nuova tupla.

Ripetizione di una Tupla

Come per le liste, è possibile ripetere una tupla per un certo numero di volte utilizzando l'operatore *. In questo modo si può ottenere una nuova tupla a partire da una tupla esistente.

Supponiamo, ad esempio, di avere la seguente tupla:

>>> tupla = (1, 2, 3)

Per ripetere la tupla 3 volte possiamo scrivere:

>>> nuova_tupla = tupla * 3
>>> nuova_tupla
(1, 2, 3, 1, 2, 3, 1, 2, 3)

Il risultato della ripetizione è sempre una nuova tupla. La tupla originaria non viene modificata.

Definizione

Ripetizione di una Tupla

In Python è possibile ripetere una tupla un certo numero di volte utilizzando l'operatore *. La sintassi è la seguente:

tupla_ripetuta = tupla * n

Il risultato della ripetizione è una nuova tupla. L'elemento n è un intero positivo che indica il numero di volte in cui la tupla deve essere ripetuta.

In Sintesi

In questa lezione abbiamo visto le operazioni di base che è possibile effettuare sulle tuple. In particolare, abbiamo visto come:

  • creare una tupla a partire da un'altra tupla o da una lista;
  • conoscere la lunghezza di una tupla;
  • concatenare due o più tuple;
  • ripetere una tupla un certo numero di volte.

Tutte queste operazioni restituiscono una nuova tupla. La tupla originaria non viene modificata. Questo perché una tupla è un oggetto immutabile.

Nella prossima lezione andremo a studiare lo slicing delle tuple.