Differenze tra Python Tuple e la lista

Python Tuple vs List è la struttura di dati più utilizzata in Python. Memorizzano una raccolta di elementi, oggetti o valori in una sequenza specificata. Possono archiviare elementi di qualsiasi tipo di dati e questo elemento è accessibile con l'aiuto del suo indice. Queste sono le somiglianze in elenchi e tuple, ma qual è la differenza?

La differenza è che una tupla è immutabile. Ciò significa che non può essere alterato, modificato o manipolato. Una tupla viene solitamente utilizzata proprio per questa proprietà. Uno dei molti usi delle tuple di Python è il disimballaggio della sequenza, in cui archiviamo i dati restituiti in alcune variabili specificate. Vediamo questo esempio per una tupla:

def test ()
ritorno 1, 2
a, b = test ()
stampare (a, b)

Qui, abbiamo usato una tupla per restituire il valore dalla funzione, e quindi durante la stampa del valore, non possiamo modificarlo.

Una Tupla Python non può contenere parentesi o parentesi come “()” Questo è ciò che aiuta Python a comprendere un elenco da una tupla. L'elenco Python è definito da parentesi quadre. La sua funzionalità è simile a come funziona un array in altre lingue. Esempio:

x = (1, 3, 5, 6, 2, 1, 6) print (x): stampa l'elenco completo
print (x (0), x (1)): stampa l'elenco a partire dall'indice 0

Spesso confuse a causa delle loro somiglianze, queste due strutture sono significativamente diverse.

Confronto testa a testa tra Python Tuple vs List (Infographics)

Di seguito è riportato il Top 6 confronto tra Python Tuple vs List

Differenze chiave tra Python Tuple e l'elenco

Di seguito sono elencati gli elenchi di punti, descrivono le differenze chiave tra Python Tuple vs List:

Funzionalità delle operazioni

Gli elenchi hanno una funzione integrata aggiuntiva rispetto alle tuple. Elenchi e tuple hanno in comune i metodi index () e count (), ma a parte questi, gli elenchi hanno molte funzioni che si applicano solo agli elenchi come append (), remove (), clear (), sort (), reverse ( ), eccetera.

Possiamo usare la funzione incorporata dir ((oggetto)) per scoprire tutte le funzioni associate a liste e tuple. L'output per tale comando sarebbe il seguente:

Elenco oggetto:

('__Inserisci__',
'__classe__',
'__Contains__',
'__Delattr__',
'__Delitem__',
'__Dir__',
'__Doc__',
'__Eq__',
'__formato__',
'__Ge__',
'__Getattribute__',
'__Getitem__',
'__Gt__',
'__Hash__',
'__aggiungo__',
'__Imul__',
'__dentro__',
'__Init_subclass__',
'__Iter__',
'__Le__',
'__Len__',
'__Lt__',
'__Mul__',
'__Ne__',
'__nuovo__',
'__ridurre__',
'__Reduce_ex__',
'__Repr__',
'__Reversed__',
'__Rmul__',
'__Setattr__',
'__Setitem__',
'__taglia di__',
'__Str__',
'__Subclasshook__',
'aggiungere',
'chiaro',
'copia',
'contare',
'estendere',
'indice',
'inserire',
'pop',
'rimuovere',
'inverso',
'ordinare')

Tuple Object:

('__Inserisci__',
'__classe__',
'__Contains__',
'__Delattr__',
'__Dir__',
'__Doc__',
'__Eq__',
'__formato__',
'__Ge__',
'__Getattribute__',
'__Getitem__',
'__Getnewargs__',
'__Gt__',
'__Hash__',
'__dentro__',
'__Init_subclass__',
'__Iter__',
'__Le__',
'__Len__',
'__Lt__',
'__Mul__',
'__Ne__',
'__nuovo__',
'__ridurre__',
'__Reduce_ex__',
'__Repr__',
'__Rmul__',
'__Setattr__',
'__taglia di__',
'__Str__',
'__Subclasshook__',
'contare',
'indice')

Possiamo vedere che ci sono funzionalità aggiuntive collegate a un elenco rispetto a una tupla.

Valutazione delle dimensioni

Le operazioni di tupla hanno dimensioni inferiori a quelle delle operazioni di elenco. Questo rende le operazioni più veloci quando c'è un numero enorme di elementi. Vediamo un esempio per calcolare la dimensione dell'elenco e degli elementi tupla.

x = (1, 2, 3, 4, 5, 6, 7, 8, 9, 0)
y = (1, 2, 3, 4, 5, 6, 7, 8, 9, 0)
stampare ( 'x =', x .__ sizeof __ ())
stampare ( 'y =', y .__ sizeof __ ())

Produzione:

x = 104
y = 120

In questo esempio, abbiamo una tupla x e un elenco y che contengono lo stesso numero di elementi, ma la dimensione della tupla è inferiore a quella dell'elenco.

Casi di uso diverso

Inizialmente, può sembrare che gli elenchi siano sempre in grado di sostituire le tuple, ma non è così. Possiamo comprenderlo per i seguenti motivi:

  • Quando una tupla viene utilizzata anziché una lista, dà allo spettatore l'idea che i dati presenti possono e non devono essere modificati.
  • Le tuple vengono spesso utilizzate per archiviare i dati come uguali a un dizionario senza chiavi.

Esempio:

(('Employee1', 1000), ('Employee2', 1001), ('Employee3', 1002))

Le tuple possono anche essere usate come chiavi nei dizionari a causa della loro natura hashtable e immutabile. Gli elenchi non sono appropriati per questo in quanto non possono gestire la funzione __hash __ () e sono mutabili in natura.

key_value = (('a', 'b'): 1) #Valid
key_value = (('a', 'b'): 1) #Invalido

  • La leggibilità è aumentata, vale a dire leggere le informazioni è più facile quando le tuple sono memorizzate in un elenco, al contrario di quando gli elenchi sono memorizzati in un elenco. Esempio:
((2, 4), (5, 7), (3, 8), (5, 9)) è più facile da leggere di ((2, 4), (5, 7), (3, 8), ( 5, 9))

Uso di tuple e liste

Usiamo una tupla quando sappiamo quali informazioni devono essere fornite e dobbiamo salvare i valori dalla modifica, ad esempio quando è necessario archiviare le credenziali per un sito Web. Le tuple sono anche usate come chiavi per un dizionario perché è possibile eseguire l'hashing di solo valori immutabili. Pertanto, in tali casi non possiamo utilizzare un elenco. Se vogliamo ancora utilizzare un elenco come chiave, dobbiamo prima convertire l'elenco in una tupla.

E d'altra parte, possiamo usare un elenco, quando vogliamo modificare i valori forniti all'interno della raccolta e anche quando non sappiamo se le dimensioni della nostra raccolta sono fisse.

Tabella di confronto tra Pupon Tuples vs Lists

Di seguito è riportato il confronto più in alto tra le tuple Python e le liste

Caratteristiche elenchi

Le tuple

SintassiGli elenchi sono definiti da parentesi quadre ().Le tuple sono definite tra parentesi () o nessuna parentesi.
Mutevole vs immutabileL'elenco è di natura mutevole, ovvero può essere modificato o modificato dopo la sua creazione.Una tupla è immutabile in natura, cioè non può essere alterata o cambiata dopo la sua creazione.

Operazioni disponibiliLe funzioni integrate nell'elenco sono più confrontate con quelle in tupla, ad esempio pop (), insert (), ecc.Tuple ha meno funzioni integrate.
Confronto dimensioniLe operazioni dell'elenco hanno dimensioni maggiori rispetto alle operazioni di tupla.Le operazioni di tupla hanno dimensioni inferiori, il che rende più veloce con molti elementi.

LunghezzaGli elenchi hanno una lunghezza variabile.

Le tuple hanno lunghezze fisse. Non possiamo cambiare la dimensione di una tupla esistente.
DuplicitàGli elenchi possono essere copiatiLe tuple non possono essere copiate.

Conclusione

Questo è tutto su Python Tuples vs Lists. Quindi, ora che abbiamo capito le differenze tra le tuple e le liste di Python, sarà più facile per noi decidere quale delle due dovrebbe essere usata e dove. Pertanto, possiamo concludere che sebbene sia le liste sia le tuple siano importanti strutture di dati in Python, ci sono notevoli differenze tra loro, con la differenza principale che gli elenchi sono mutabili mentre le tuple no.

Articolo raccomandato

Questa è stata una guida alla differenza tra Pupon Tuple vs List. Qui discutiamo anche le differenze chiave tra Pupon Tuple e List con infografica e tabella comparativa. Puoi anche consultare i seguenti articoli per saperne di più-

  1. Agile vs Waterfall - Migliori differenze
  2. Digital Ocean vs AWS
  3. Test del fumo vs test di integrità
  4. Come installare Python
  5. Tipi di compilatori Python
  6. Diverse operazioni relative alle tuple
  7. Comprensione della lista Python
  8. Che cos'è il test di integrità e come funziona?

Categoria: