Python 3 - Tuple
Una tupla è una raccolta di oggetti ordinati e immutabili. Le tuple sono sequenze, proprio come le liste. La differenza principale tra le tuple e le liste è che le tuple non possono essere modificate a differenza delle liste. Le tuple usano le parentesi, mentre le liste usano le parentesi quadre.
Creare una tupla è semplice come inserire diversi valori separati da virgole. Facoltativamente, puoi anche inserire questi valori separati da virgole tra parentesi. Ad esempio:
tup1 = ('physics', 'chemistry', 1997, 2000)
tup2 = (1, 2, 3, 4, 5 )
tup3 = "a", "b", "c", "d"
La tupla vuota è scritta come due parentesi che non contengono nulla -
tup1 = ();
Per scrivere una tupla contenente un singolo valore devi includere una virgola, anche se c'è un solo valore -
tup1 = (50,)
Come gli indici di stringa, gli indici di tupla iniziano da 0 e possono essere suddivisi, concatenati e così via.
Accesso ai valori nelle tuple
Per accedere ai valori in tupla, utilizzare le parentesi quadre per affettare insieme all'indice o agli indici per ottenere il valore disponibile in quell'indice. Ad esempio:
#!/usr/bin/python3
tup1 = ('physics', 'chemistry', 1997, 2000)
tup2 = (1, 2, 3, 4, 5, 6, 7 )
print ("tup1[0]: ", tup1[0])
print ("tup2[1:5]: ", tup2[1:5])
Quando il codice sopra viene eseguito, produce il seguente risultato:
tup1[0]: physics
tup2[1:5]: (2, 3, 4, 5)
Aggiornamento delle tuple
Le tuple sono immutabili, il che significa che non è possibile aggiornare o modificare i valori degli elementi della tupla. Puoi prendere parti delle tuple esistenti per creare nuove tuple come dimostra il seguente esempio:
#!/usr/bin/python3
tup1 = (12, 34.56)
tup2 = ('abc', 'xyz')
# Following action is not valid for tuples
# tup1[0] = 100;
# So let's create a new tuple as follows
tup3 = tup1 + tup2
print (tup3)
Quando il codice sopra viene eseguito, produce il seguente risultato:
(12, 34.56, 'abc', 'xyz')
Elimina elementi tupla
Non è possibile rimuovere singoli elementi della tupla. Non c'è, ovviamente, niente di sbagliato nel mettere insieme un'altra tupla con gli elementi indesiderati scartati.
Per rimuovere in modo esplicito un'intera tupla, basta usare il deldichiarazione. Ad esempio:
#!/usr/bin/python3
tup = ('physics', 'chemistry', 1997, 2000);
print (tup)
del tup;
print ("After deleting tup : ")
print (tup)
Questo produce il seguente risultato.
Note- Viene sollevata un'eccezione. Questo perché dopodel tup, la tupla non esiste più.
('physics', 'chemistry', 1997, 2000)
After deleting tup :
Traceback (most recent call last):
File "test.py", line 9, in <module>
print tup;
NameError: name 'tup' is not defined
Operazioni di base sulle tuple
Le tuple rispondono agli operatori + e * in modo molto simile alle stringhe; significano anche qui concatenazione e ripetizione, tranne per il fatto che il risultato è una nuova tupla, non una stringa.
Infatti, le tuple rispondono a tutte le operazioni di sequenza generali che abbiamo usato sulle stringhe nel capitolo precedente.
Espressione di Python | Risultati | Descrizione |
---|---|---|
len ((1, 2, 3)) | 3 | Lunghezza |
(1, 2, 3) + (4, 5, 6) | (1, 2, 3, 4, 5, 6) | Concatenazione |
("Ciao!",) * 4 | ("Ciao!", "Ciao!", "Ciao!", "Ciao!") | Ripetizione |
3 pollici (1, 2, 3) | Vero | Appartenenza |
for x in (1,2,3): print (x, end = '') | 1 2 3 | Iterazione |
Indicizzazione, suddivisione in sezioni e matrici
Poiché le tuple sono sequenze, l'indicizzazione e l'affettamento funzionano allo stesso modo per le tuple come per le stringhe, assumendo il seguente input:
T=('C++', 'Java', 'Python')
Espressione di Python | Risultati | Descrizione |
---|---|---|
T [2] | 'Pitone' | Gli offset iniziano da zero |
T [-2] | 'Giava' | Negativo: conta da destra |
T [1:] | ("Java", "Python") | Il sezionamento recupera le sezioni |
Nessun delimitatore di inclusione
Nessun delimitatore di inclusione è un insieme di più oggetti, separati da virgole, scritti senza simboli identificativi, cioè parentesi per elenchi, parentesi per tuple, ecc., L'impostazione predefinita è tuple, come indicato in questi brevi esempi.
Funzioni di tupla incorporate
Python include le seguenti funzioni di tupla:
Sr.No. | Descrizione della funzione |
---|---|
1 | cmp (tuple1, tuple2) Confronta gli elementi di entrambe le tuple. |
2 | len (tupla) Fornisce la lunghezza totale della tupla. |
3 | max (tupla) Restituisce l'elemento dalla tupla con il valore massimo. |
4 | min (tupla) Restituisce l'elemento dalla tupla con valore minimo. |
5 | tupla (seq) Converte un elenco in tupla. |