Funcția Enumerate() în Python: O prezentare de bază
Publicat: 2021-06-24Python este una dintre limbile cele mai preferate printre oamenii de știință de date. Limbajul este intuitiv, iar python are o serie de biblioteci utile pentru a rezolva diferite probleme. Are numeroase module pentru a ajuta oamenii de știință de date în diferite etape ale oricărei probleme de știință a datelor - de la data mining la analiză la raportare.
La upGrad, am îndrumat profesioniști din diverse domenii, inclusiv economie, științe umaniste, inginerie. Python a fost de departe cel mai ușor de învățat atât pentru începători, cât și pentru profesioniști, în orice etapă a carierei lor. Așadar, dacă ești un aspirant cercetător de date care dorește să faci primii pași, Python ar putea fi un bun punct de plecare!
Limbajul de programare Python are mai multe funcții pentru a vă ajuta să treceți prin diferite seturi de date și să manipulați containerele de date conform cerințelor dvs. Una dintre astfel de caracteristici este metoda enumerate(). Este una dintre cele mai importante funcții din Python, în special pentru lucrul cu seturi de date voluminoase. Nu numai asta, dar funcția este, de asemenea, mult mai optimizată decât alte funcții Python care îndeplinesc o sarcină similară - vă păstrează codul eficient și curat.
Funcția adaugă un contor oricărui obiect iterabil. Apoi, folosind contorul, puteți urmări numărul de iterații care au avut loc. Valoarea acestui contor este stocată separat. Folosind această metodă, puteți parcurge o listă sau un dicționar sau un tuplu sau un set de articole în timp ce țineți evidența indexului tuturor elementelor.
În acest articol, vom defalca funcția enumerate() în continuare!
Sintaxa și aplicarea metodei enumerate().
Funcția enumerate() creează o variabilă contor separată care ține evidența numărului de iterații dintr-o buclă. Este o funcție Python încorporată, deci nu trebuie să importați nicio bibliotecă pentru a accesa aceasta.
În timp ce utilizați funcția enumerate(), nu trebuie să vă faceți griji cu privire la crearea instrucțiunii range() pentru a obține lungimea completă a matricei. Deoarece aveți variabila counter, puteți itera rapid peste enumerate() fără a crea un iterator diferit.
Iată sintaxa metodei enumerate():
enumerate(iterabil, startIndex)
Are doi parametri:
- Iterabil: orice obiect care poate fi trecut în buclă.
- startIndex: Acesta este opțional. Dacă dați vreo valoare aici, numărul va începe de la valoarea pe care o furnizați și va crește până la sfârșitul buclei. În mod implicit, valoarea startIndex este 0.
Să înțelegem funcționarea metodei enumerate() verificând câteva exemple!
Iată o mică bucată de cod. Avem o matrice cu numele food_items și, în bucla for, am apelat metoda enumerate() cu iterabilul fiind food_items (aceasta va fi matricea pe care această funcție o va trece). Apoi, încercăm să tipărim indexul și numele - acestea sunt cele două elemente returnate de enumerate()
food_items = [„Pizza”, „Burger”, „Salata”, „Lasagna”, „Spaghete”]
pentru index, nume în enumerate(food_items):
print(index, nume)
Funcția enumerate() iterează peste elementul nostru din matricea alimentară și returnează index și nume. Indexul este numărul de iterații care au avut loc, iar numele este elementul specific din listă. Iată ce iese programul:
0 Pizza
1 burger
2 Salată
3 Lasagna
4 Spaghete
După cum puteți vedea, rezultatul este așa cum v-ați fi așteptat – obțineți un obiect de indici și nume pentru diferitele articole din lista de food_items. Folosirea funcției enumerate() în loc de len() sau range() face codul nostru extrem de curat și ușor de citit!
Lucrul cu obiectul Enumerare
În mod implicit, enumerate() returnează o listă de tupluri. Putem vedea acest lucru prin imprimarea valorii lui „item” în timp ce iterăm peste matricea food_items:
pentru elementul din enumerate(food_items):
imprimare (articol)
Acest cod returnează valoarea indexului și produsul alimentar la acel index într-o structură de date tuple.
(0, „Pizza”)
(1, „Burger”)
(2, „Salata”)
(3, „Lasagna”)
(4, „Spaghete”)
Dacă ați acordat atenție încă de la începutul acestui articol, v-ați aminti că metoda enumerate() ia doi parametri – iterable și startIndex. În mod implicit, metoda noastră de până acum vorbea – ca startIndex. Să încercăm să schimbăm asta și să vedem cum funcționează!
food_items = [„Pizza”, „Burger”, „Salata”, „Lasagna”, „Spaghete”]
pentru index, nume în enumerate(food_items, 10):
print(index, nume)
Programul nostru returnează următoarele
10 Pizza
11 Burger
12 Salată
13 Lasagna
14 Spaghete
Acest lucru este util pentru cazurile de utilizare în care doriți să începeți lista de la un alt număr decât 0.
De asemenea, putem crea tupluri cu elementul din listă și index folosind metoda enumerate(). Iată un exemplu:
food_items = [„Pizza”, „Burger”, „Salata”, „Lasagna”, „Spaghete”]
produse_alimentare_cu_contor = listă(enumerate(produse_alimente, 1))
print(lista_produse_alimentare_cu_contor)
Codul va returna o listă de tupluri cu produsele alimentare și valoarea indexului din metoda enumerate(). Verifică:
[(1, „Pizza”), (2, „Burger”),(3, „Salata”), (4, „Lasagna”), (5, „Spaghete”)]
Concluzie
Funcția enumerate() din Python este o funcție robustă și optimizată. Este util dacă doriți să iterați peste o matrice de valori și să manipulați date în diferite locații ale matricei.
Acum că știți elementele de bază ale enumerate(), continuați și exersați – creați câteva matrice și încercați să rulați funcția enumerate() cu diferite intrări. La urma urmei, programarea ține de practică. Este important să adăugați – programarea (și știința datelor, în special) înseamnă, de asemenea, să cunoașteți lucrurile potrivite, în afară de practicarea în mod flagrant. Trebuie să găsiți o combinație a celor două - cunoștințe și practică.
Dacă sunteți mai proaspăt în acest domeniu în căutarea ajutorului - upGrad vă sprijină! Masteratul nostru în învățare automată și inteligență artificială funcționează în colaborare cu IIIT-Bangalore și LJMU. Obțineți asistență individuală de la experți din industrie, un grup puternic de studenți și asistență în carieră la 360 de grade.
Contactează-ne astăzi și avansează-ți cariera!