Listă vs Tuple: Diferența dintre Listă și Tuple
Publicat: 2021-01-08În Python, list și tuple sunt o clasă de structură de date care poate stoca unul sau mai multe obiecte sau valori. O listă este folosită pentru a stoca mai multe articole într-o variabilă și poate fi creată folosind paranteze drepte. În mod similar, tuplurile pot stoca mai multe elemente într-o singură variabilă și pot fi declarate folosind paranteze.
Deși există multe diferențe între listă și tuplu, există și unele asemănări, după cum urmează:
- Cele două structuri de date sunt ambele tipuri de date secvențe care stochează colecții de articole.
- În ele pot fi stocate articole de orice tip de date.
- Articolele pot fi accesate prin indexul lor.
Cuprins
Listă vs Tuple
Tabelul de mai jos include diferența de bază dintre listă și tuplu în Python.
Listă | tuplu |
Este mutabil | Este imuabil |
Implicația iterațiilor necesită mult timp în listă. | Implicațiile iterațiilor sunt mult mai rapide în tupluri. |
Operațiuni precum inserarea și ștergerea sunt mai bine efectuate. | Elementele pot fi accesate mai bine. |
Consumă mai multă memorie. | Consumă mai puțină memorie. |
Sunt disponibile multe metode încorporate. | Nu are multe metode încorporate. |
În liste pot apărea cu ușurință erori și modificări neașteptate. | Erorile și modificările neașteptate apar rar în tupluri. |
Următoarele secțiuni oferă o versiune detaliată a listei vs tuple pentru o mai bună înțelegere.
Diferența de sintaxă
După cum sa menționat în introducere, sintaxa pentru listă și tuplu sunt diferite. De exemplu:
list_num = [10, 20, 30, 40]
tup_num = (10, 20, 30, 40)
Mutabilitate
Una dintre cele mai importante diferențe dintre listă și tuplu este că lista este mutabilă, în timp ce un tuplu este imuabil. Aceasta înseamnă că listele pot fi modificate, iar tuplurile nu pot fi modificate.
Deci, unele operații pot funcționa pe liste, dar nu și pe tupluri. De exemplu, în știința datelor, dacă o listă există deja, anumite elemente ale acesteia pot fi reatribuite. Odată cu aceasta, întreaga listă poate fi reatribuită. Elementele și feliile de elemente pot fi șterse din listă.
Pe de altă parte, anumite elemente de pe tuplu nu pot fi reatribuite sau șterse, dar este posibil să-l tăiați, și chiar să reatribuiți și să ștergeți întregul tuplu. Deoarece tuplurile sunt imuabile, nu pot fi copiate.
Verificați: Python vs Java
Operațiuni
Deși există multe operații similare atât cu listele, cât și cu tuplurile, listele au funcționalități suplimentare care nu sunt disponibile cu tupluri. Acestea sunt operațiuni de inserare și pop, precum și de sortare și eliminare a elementelor din listă.
Funcții
Unele dintre funcțiile Python pot fi aplicate ambelor structuri de date, cum ar fi len, max, min, any, sum, all și sortate.
mărimea
În Python, tuplurilor li se alocă blocuri mari de memorie cu supraîncărcare mai mică, deoarece sunt imuabile; în timp ce pentru liste sunt alocate blocuri de memorie mici. Între cele două, tuplurile au memorie mai mică. Acest lucru ajută la crearea tuplurilor mai rapide decât listele atunci când există un număr mare de elemente.
Tipul elementelor
Elementele aparținând diferitelor tipuri de date, adică elementele eterogene, sunt de obicei stocate în tupluri. În timp ce elementele omogene, elementele de aceleași tipuri de date, sunt de obicei stocate în liste. Dar aceasta nu este o restricție pentru structurile de date. Elemente de tip de date similare pot fi stocate în tupluri, iar elementele de tip de date diferite pot fi, de asemenea, stocate în liste.

Lungime
Lungimile diferă în cele două structuri de date. Tuplurile au o lungime fixă, în timp ce listele au lungimi variabile. Astfel, dimensiunea listelor create poate fi modificată, dar nu este cazul tuplurilor.
Depanare
Când vine vorba de depanare, în liste vs tupluri, tuplurile sunt mai ușor de depanat pentru proiecte mari datorită imuabilității sale. Deci, dacă există un proiect mai mic sau o cantitate mai mică de date, este mai bine să folosiți liste. Acest lucru se datorează faptului că listele pot fi modificate, în timp ce tuplurile nu pot, făcându-le mai ușor de urmărit.
Liste imbricate și tupluri
Tuplurile pot fi stocate în liste și, de asemenea, listele pot fi stocate în interiorul tuplurilor. În tuplurile imbricate, un tuplu poate conține mai multe tupluri. Și în listele imbricate, o listă poate conține mai multe liste.
Utilizări
Este important să înțelegeți că există diferite cazuri în care este mai bine să utilizați una dintre aceste structuri de date, cum ar fi; folosirea fiecăreia depinde de programator, adică alegerea unuia în funcție de dacă doresc să schimbe datele mai târziu sau nu.
Tuplurile pot fi folosite ca echivalent cu un dicționar fără chei pentru stocarea datelor. Când tuplurile sunt stocate în liste, este mai ușor să citiți datele.
Citiți: Mai multe tipuri de structuri de date în Python
Concluzie
Acest articol vă ajută să înțelegeți diferențele dintre liste și tupluri. Chiar dacă ambele tipuri sunt structuri de date în Python, este important să fiți familiarizați cu aceste diferențe atunci când faceți o alegere. Cele mai importante diferențe de reținut sunt că listele sunt mutabile, iar tuplurile nu, listele au dimensiuni variabile, iar tuplurile au dimensiuni fixe. În cele din urmă, operațiunile în tupluri pot fi executate mai rapid.
Dacă citiți acest articol, cel mai probabil aveți ambiții de a deveni un dezvoltator Python. Dacă sunteți interesat să învățați python și doriți să vă murdăriți mâinile cu diverse instrumente și biblioteci, consultați Programul Executive PG în știința datelor de la IIIT-B și upGrad.
Când este preferată o listă Python pentru stocarea datelor?
Lista Python este considerată a fi cea mai bună structură de date pentru a stoca datele în următoarele scenarii: O listă poate fi utilizată pentru a stoca diferite valori cu diferite tipuri de date și poate fi accesată doar prin indicii respectivi. Când trebuie să efectuați operații matematice asupra elementelor, o listă poate fi folosită, deoarece vă permite să operați matematic elementele direct. Deoarece o listă poate fi redimensionată, aceasta poate fi folosită pentru a stoca datele atunci când nu sunteți sigur de numărul de elemente care trebuie stocate.
Prezentați diferitele operații ale namedtuple.
Namedtuple din Python efectuează diverse operații. Următoarea este o listă a unora dintre cele mai frecvente operațiuni efectuate de namedtuple - Acces prin index, Acces prin nume cheie, make(), _asadict(), folosind operatorul „**” (stea dublă), _fileds(), _replace (), etc.
Care sunt diferitele moduri de a crea o listă?
O listă Python poate fi creată în mai multe moduri care sunt menționate aici. Utilizarea buclelor for - O buclă for este cel mai elementar mod de a crea o listă. O listă poate fi creată folosind o buclă for în trei moduri simple - Creați o listă goală, Iterați peste toate elementele care urmează să fie inserate, Adăugați fiecare element în listă folosind funcția append(). Utilizarea map(): Funcția map() din Python poate fi folosită alternativ pentru a crea o listă. Această funcție acceptă doi parametri - Funcție: Funcția către care harta îi trece fiecare iterabil și Iterable: elementul sau iterabilul care trebuie mapat. Utilizarea listelor de înțelegere: Această metodă este cea mai optimizată dintre toate cele trei metode. În timp ce în metodele de mai sus trebuie creată mai întâi o listă goală, listele de înțelegere vă permit să inserați toate elementele dintr-o listă folosind o singură linie.