lettura facile

Le tuple in Python

Nel linguaggio Python le tuple sono sequenze di oggetti immutabili. Il che significa che una volta che hai creato una tupla, non puoi modificarla.

Qual è la differenza tra le liste e le tuple? Le liste in Python sono strutture dati modificabili definite tra parentesi quadre, ideali per collezioni dinamiche di elementi che cambiano nel tempo. Le tuple, invece, sono strutture dati non modificabili definite tra parentesi tonde, utilizzate per raggruppare delle informazioni che non cambieranno durante l'esecuzione del programma.

Come creare una tupla

Per creare una tupla, inserisci gli elementi desiderati, separati da virgole, all'interno di una coppia di parentesi tonde.

my_tuple = ('elemento1', 'elemento2', 'elemento3')

Puoi creare una tupla anche senza utilizzare le parentesi tonde

my_tuple = 'elemento1', 'elemento2', 'elemento3'

In alternativa, puoi utilizzare la classe tuple()

my_tuple = tuple('elemento1', 'elemento2', 'elemento3')

La classe tuple() ha il vantaggio che può accettare come argomento anche un altro oggetto iterabile. Ad esempio, una lista. 

lista = ['elemento1', 'elemento2', 'elemento3']
my_tuple = tuple(lista)

In ogni caso, il risultato finale è sempre lo stesso.

È importante prestare attenzione alla definizione di una tupla con un singolo elemento. Per crearne una, è necessario includere una virgola dopo l'elemento; in caso contrario, Python interpreterà l'oggetto come un singolo valore anziché una tupla. Pertanto, per definire correttamente una tupla con un solo elemento, dovresti seguire questa sintassi:

my_tuple = ('solo_elemento',)

Se invece gli elementi sono almeno due, è possibile omettere le parentesi tonde.

my_tuple = 'elemento1', 'elemento2', 'elemento3'

Ecco un esempio pratico.

Crea una tupla con i nomi delle stagioni:

seasons = ('primavera', 'estate', 'autunno', 'inverno')

Poi visualizza il contenuto della tupla

print(seasons)

Python visualizza tutti gli elementi all'interno della tupla

('primavera', 'estate', 'autunno', 'inverno')

Per creare una tupla vuota, invece, puoi usare la classe tuple senza indicare alcun argomento tra le parentesi tonde.

my_tuple = tuple()

Per verificare che l'oggetto appena creato è effettivamente una tupla, puoi usare la funzione type().

print(type(my_tuple))

Se l'oggetto è una tupla, la funzione type restituisce il tipo <class 'tuple'>.

<class 'tuple'>

L'accesso agli elementi della tupla

Puoi accedere agli elementi di una tupla utilizzando l'indicizzazione, indicando l'indice dell'elemento desiderato tra parentesi quadre subito dopo il nome della tupla.

my_tuple[indice]

Ricorda che in Python gli indici partono sempre da zero. Quindi, il primo elemento della tupla ha indice zero, il secondo ha indice uno, e via dicendo.

Ad esempio, crea una tupla nella variabile "seasons".

seasons = ('primavera', 'estate', 'autunno', 'inverno')

Poi stampa il primo elemento della tupla indicando seasons[0] nell'istruzione print().

print(seasons[0])

Python accede all'elemento con indice zero, il primo elemento della tupla, e lo stampa sullo schermo.

primavera

Per accedere al secondo elemento scrivi seasons[1] nell'istruzione print().

print(seasons[1])

Python legge e restituisce l'elemento della tupla con indice uno, ossia il secondo elemento della tupla.

estate

In questo modo puoi accedere a ogni singolo elemento della tupla.

Immutabilità della Tupla

Le tuple sono immutabili, il che significa che non puoi modificare, aggiungere o rimuovere elementi da una tupla una volta che è stata definita.

Prendiamo come esempio la tupla precedente.

seasons = ('primavera', 'estate', 'autunno', 'inverno')

Questa tupla è composta da quattro elementi.

Prova a modificare il primo elemento della tupla.

seasons[0] = 'prova'

Quando provi a modificare una tupla, Python restituisce un messaggio di errore.

TypeError: 'tuple' object does not support item assignment

Iterazione su una Tupla

Puoi iterare gli elementi di una tupla in modo simile a come lo faresti con una lista.

Ad esempio, crea la tupla

seasons = ('primavera', 'estate', 'autunno', 'inverno')

Poi itera tra gli elementi della lista tramite un ciclo for

  1. for elemento in seasons:
  2. print(elemento)

In ogni iterazione Python accede a un elemento della lista e lo stampa sullo schermo

primavera
estate
autunno
inverno

Le funzioni e Metodi della Tupla

Il linguaggio Python ha diverse funzioni e metodi utili per lavorare con le tuple.

Ad esempio, crea una tupla.

my_tuple = (1, 2, 3, 2, 4, 4, 4)

Poi usa la funzione len() per trovare il numero degli elementi

print(len(my_tuple))

La tupla contiene 7 elementi.

7

La funzione max() ti permette di individuare il valore massimo

print(max(my_tuple))

Il valore massimo nella tupla è 7

4

La funzione min() individua il valore minimo nella tupla.

print(min(my_tuple))

Il valore minimo nella tupla è 1

1

Il metodo count() conta il numero di volte che un elemento appare nella tupla

print(my_tuple.count(4))

Stampa 3, il numero di volte che 4 appare nella tupla

3

Il metodo index() individua l'elemento con un determinato numero indice.

print(my_tuple.index(2))

In questo caso nell'indice 2 della tupla è memorizzato il valore 1

1

Ricorda, l'uso delle tuple è molto vasto e le troverai spesso durante la programmazione.

È un concetto fondamentale da comprendere quando si lavora con Python.




Se qualcosa non ti è chiaro, scrivi la tua domanda nei commenti.




FacebookTwitterLinkedinLinkedin