Diferențele dintre Python Tuple și Listă

Python Tuple vs List este structurile de date cele mai des utilizate în Python. Stochează o colecție de obiecte, fie obiecte, fie valori într-o secvență specificată. Acestea pot stoca elemente de orice tip de date și acest articol poate fi accesat cu ajutorul indexului său. Acestea sunt asemănările din liste și tupluri, dar care este diferența?

Diferența este că un tuple este imuabil. Aceasta înseamnă că nu poate fi modificată, schimbată sau manipulată. Un tuple este de obicei utilizat exact pentru această proprietate. Una dintre numeroasele utilizări ale tuple-urilor Python este despachetarea în secvență, unde stocăm datele returnate la câteva variabile specificate. Să ne uităm la acest exemplu pentru un tuple:

def test ()
returnare 1, 2
a, b = test ()
print (a, b)

Aici, am folosit un tuple pentru a returna valoarea din funcție, prin urmare, în timp ce imprimăm valoarea, nu o putem modifica.

Un Python Tuple poate avea fie paranteze în jurul lui, fie paranteză de genul „()” Acest lucru îl ajută pe Python să înțeleagă o listă dintr-un tuple. Lista Python este definită prin paranteze pătrate. Funcționalitatea sa este similară cu modul în care un tablou funcționează în alte limbi. Exemplu:

x = (1, 3, 5, 6, 2, 1, 6) print (x): Tipărește lista completă
print (x (0), x (1)): Tipărește lista începând de la Index 0

Adesea confundate datorită asemănărilor lor, aceste două structuri sunt semnificativ diferite.

Comparație față în față între Python Tuple și Listă (Infografie)

Mai jos este lista de top 6 Comparatie Python Tuple vs

Diferențele cheie între Python Tuple și Listă

Mai jos sunt listele de puncte, descrieți diferențele cheie între Python Tuple și Listă:

Funcționalitatea operațiilor

Listele au o funcție suplimentară incorporată în comparație cu tuplurile. Listele și tuplurile au în comun metodele index () și count (), dar în afară de acestea, listele au multe funcții care se aplică numai în mod specific listelor precum append (), remove (), clear (), sort (), reverse ( ) etc.

Putem folosi funcția inbuilt dir ((obiect)) pentru a afla toate funcțiile asociate listelor și tuplurilor. Rezultatul pentru o astfel de comandă va fi după cum urmează:

Obiectul listei:

('__adăuga__',
'__clasă__',
'__Contains__',
'__Delattr__',
'__Delitem__',
'__Dir__',
'__Doc__',
'__Eq__',
'__format__',
'__GE__',
'__Getattribute__',
'__Getitem__',
'__Gt__',
'__Hash__',
'__adaug__',
'__Imul__',
'__Init__',
'__Init_subclass__',
'__Iter__',
'__Le__',
'__Len__',
'__Lt__',
'__Mul__',
'__Ne__',
'__nou__',
'__reduce__',
'__Reduce_ex__',
'__Repr__',
'__Reversed__',
'__Rmul__',
'__Setattr__',
'__Setitem__',
'__Sizeof__',
'__Str__',
'__Subclasshook__',
'adăuga',
'clar',
'copie',
'numara',
'extinde',
'index',
'introduce',
'Pop',
'elimina',
'inversa',
'fel')

Obiect Tuple:

('__adăuga__',
'__clasă__',
'__Contains__',
'__Delattr__',
'__Dir__',
'__Doc__',
'__Eq__',
'__format__',
'__GE__',
'__Getattribute__',
'__Getitem__',
'__Getnewargs__',
'__Gt__',
'__Hash__',
'__Init__',
'__Init_subclass__',
'__Iter__',
'__Le__',
'__Len__',
'__Lt__',
'__Mul__',
'__Ne__',
'__nou__',
'__reduce__',
'__Reduce_ex__',
'__Repr__',
'__Rmul__',
'__Setattr__',
'__Sizeof__',
'__Str__',
'__Subclasshook__',
'numara',
'index')

Putem vedea că există funcționalități suplimentare legate cu o listă decât pentru un tuple.

Evaluarea mărimii

Operațiunile Tuple au o dimensiune mai mică decât cea a operațiunilor de listă. Acest lucru face ca operațiunile să fie mai rapide atunci când există un număr enorm de elemente. Să vedem un exemplu pentru a calcula dimensiunea listei și a elementelor de top.

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

ieşire:

x = 104
y = 120

În acest exemplu, avem un tuple x și o listă y care conține același număr de articole, dar dimensiunea tuplei este mai mică decât cea a listei.

Cazuri de utilizare diversă

Inițial, se poate părea că listele vor putea întotdeauna înlocui tuplurile, dar nu este cazul. Putem înțelege acest lucru din următoarele motive:

  • Când un tuple este utilizat spre deosebire de o listă, oferă privitorului o idee că datele prezente pot fi și nu ar trebui schimbate.
  • Picioarele sunt frecvent utilizate pentru a stoca date ca fiind egalul unui dicționar fără chei.

Exemplu:

((„Angajat1”, 1000), („Angajat2”, 1001), („Angajat”, 1002))

Tuplurile pot fi de asemenea folosite ca chei în dicționare, datorită naturii lor hashtable și imuabile. Listele nu sunt adecvate pentru că nu pot gestiona funcția __hash __ () și sunt de natură mutabilă.

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

  • Lectura este crescută, adică citirea informațiilor este mai ușoară atunci când tuplurile sunt stocate într-o listă, spre deosebire de listele stocate într-o listă. Exemplu:
((2, 4), (5, 7), (3, 8), (5, 9)) este mai ușor de citit decât ((2, 4), (5, 7), (3, 8), ( 5, 9))

Utilizarea tuplurilor și listelor

Folosim un tuple când știm ce informații trebuie furnizate și trebuie să salvăm valorile de la modificări, ca atunci când trebuie să stocăm datele de acreditare pentru un site web. Tuplurile sunt de asemenea utilizate ca chei pentru un dicționar, deoarece doar valorile imuabile pot fi spălate. Prin urmare, nu putem folosi o listă în astfel de cazuri. Dacă totuși dorim să utilizăm o listă ca cheie, trebuie mai întâi să convertim lista într-un tuplu.

Și pe de altă parte, putem folosi o listă, atunci când dorim să modificăm valorile date în cadrul colecției și, de asemenea, când nu știm dacă dimensiunea colecției noastre este fixă.

Python Tuples vs Liste tabel comparativ

Mai jos este cea mai înaltă comparație între tupe Python și Liste

Caracteristici liste

Perechile

SintaxăListele sunt definite prin paranteze pătrate ().Tuplurile sunt definite prin paranteză () sau fără paranteze.
Mutabil vs imuabilLista este de natură mutabilă, adică poate fi modificată sau modificată după crearea sa.Un tuple este de natură imuabilă, adică nu poate fi modificat sau modificat după crearea sa.

Operațiuni disponibileFuncțiile încorporate din listă sunt mai mult comparativ cu cele din tuple, de exemplu, pop (), insert () etc.Tuple are mai puține funcții încorporate.
Comparație de mărimeOperațiunile de listă au o dimensiune mai mare în comparație cu operațiile de tip tuple.Operațiunile Tuple au dimensiuni mai mici, ceea ce îl face mai rapid cu multe elemente.

LungimeListele au o lungime variabilă.

Tuplurile au lungimi fixe. Nu putem modifica dimensiunea unui tuple existent.
DuplicitateListele pot fi copiateNu se pot copia copii.

Concluzie

Este vorba despre Python Tuples vs Liste. Așa că acum, după ce am înțeles diferențele dintre piple-uri și liste, ne va fi mai ușor să decidem care dintre cele două ar trebui să fie utilizate și unde. Prin urmare, putem concluziona că, deși atât listele, cât și tuplurile sunt structuri importante de date în Python, există diferențe notabile între ele, diferența majoră fiind aceea că listele sunt mutabile, în timp ce tuplurile nu sunt.

Articol recomandat

Acesta a fost un ghid pentru diferența dintre Python Tuple și Listă. Aici vom discuta, de asemenea, diferențele cheie Python Tuple vs List cu infografie și tabelul de comparație. De asemenea, puteți consulta următoarele articole pentru a afla mai multe-

  1. Agile vs Cascada - Diferențe de vârf
  2. Digital Ocean vs AWS
  3. Testarea fumului și testarea sanității
  4. Cum se instalează Python
  5. Tipuri de compilatoare Python
  6. Diferite operațiuni legate de Tuple
  7. Python List Comprehension
  8. Ce este Sanity Testing și cum funcționează?