In questa lezione studieremo le tuple in Python, cioè una serie ordinata di valori immutabili identificati da un indice.

Una tupla è un tipo di dato molto simile alla lista, la differenza consiste nel fatto che le tuple sono immutabili, cioè non si possono cambiare i valori.

Quindi le tuple sono adatte a rappresentare dei dati che non cambiano mai.

Ad esempio possono non cambiare i dati anagrafici delle persone, i giorni della settimana, le stagioni dell’anno, ecc.

Convenzionalmente le tuple in Python si indicano con una lista di valori separati da virgole, racchiusi tra parentesi tonde che però non sono obbligatorie.

Facciamo quindi un primo esempio di tupla:

Banner Pubblicitario
giorni=('lunedì', 'martedì', 'mercoledì', 'giovedì', 'venerdì', 'sabato', 'domenica')

Al contrario delle liste, in questo caso non posso riassegnare dei valori.

Quindi ad esempio, questa operazione non è consentita:

giorni[1]='Mar'

Infatti se provate voi stessi, noterete che vi restituirà errore.

I vantaggi nell’uso delle tuple rispetto alle liste consiste in un tempo di elaborazione più veloce e in uno spazio di memoria inferiore.


Conversione di una tupla ad una lista, funzioni list e tuple in Python

Per poter modificare una tupla allora si può convertirla in lista, apportare delle modifiche e quindi riconvertirla in tupla.

Ecco quindi un semplice esempio:

voti=(4,6,8,9)

v=list(voti)

v[0]=6

voti=tuple(v)

print(v[0])


Tuple in Python con un singolo elemento

In Python è possibile creare una tupla con un singolo elemento, ma occorre aggiungere una virgola finale. Ad esempio:

Banner pubblicitario
giorno=('Lunedì',)
print(giorno[0])

La virgola è necessaria altrimenti Python tratterebbe la singola tupla come una stringa qualunque.


Operazioni con le tuple in Pyhton

Le operazioni che si possono effettuare con le tuple non sono tutte quelle che abbiamo visto con le liste.

Lunghezza di una tupla

Ad esempio si può calcolare la lunghezza di una tupla con la funzione len:

voti=(4,8,6,10)

lunghezza=len(voti)


Concatenazione di tuple

Le tuple in Python si possono anche concatenare:

a = ('Primavera', 'Estate')
b = ('Autunno', 'Inverno')
c=a+b
print(c)


Prodotto con le tuple

Si può effettuare anche il prodotto:

voto=(6,)

voto*=3

print(voto)

Si avrà quindi in output (6, 6, 6).


Ricerca di un dato in una tupla

Per ricercare un dato in una tupla si utilizza in.

a = (‘Primavera’, ‘Estate’)
b = (‘Autunno’, ‘Inverno’)
‘Estate’ in a #restituisce True
‘Estate’ in a #restituisce False


Conteggiare quante volte compare un elemento, metodo count

Inoltre, il metodo count consente di contare quante volte ricorre un elemento nella tupla. Se non lo trova dà un’eccezione e più avanti impareremo come gestirle.

voti=(4,8,6,10,6)
c=voti.count(6)
print(c)

In questo caso si stamperà 2, cioè il numero di volte che occorre il numero 6.


Posizione dell’elemento nella tupla con il metodo index

Il metodo index restituisce la posizione dell’elemento partendo da 0.

voti=(4,8,6,10)
c=voti.index(8)
print(c)


Usare if con le tuple

L’if, con le tuple in Python, si utilizza allo stesso modo delle liste, ecco un esempio:

voti=(4,6,8,9)

if voti[0]>=6:

print(‘Sufficiente’)

else:

print(‘Insufficiente’)


Cicli con le tuple

Anche i cicli si utilizzano allo stesso modo, dunque facciamo un esempio con il ciclo for.

voti=(4,6,8,9)

for i in voti:

print(‘Voti: ‘, i)

In questa lezione abbiamo introdotto le tuple in Python, più avanti approfondiremo l’argomento al fine di comprenderne meglio le potenzialità.

Alcuni link utili

Indice tutorial sul linguaggio Python

1 – Introduzione al linguaggio Python

2 – Le variabili

3 – Operatori aritmetici e di assegnazione

4 – Stringhe

5 – Casting

6 – Input e print

7 – Primi esercizi in Python

8 – Errori in Python