Python Funkcija enumerate(): Petlja, n-torka i niz znakova

⚡ Pametni sažetak

Python enumerate() dodaje automatski brojač svim iterabilnim, vraćajućim parovima indeks-vrijednost dok se petlja izvodi. Ovdje ćete naučiti njegovu sintaksu, opcionalni početni indeks i kako radi na listama, n-torkama, stringovima i rječnicima.

  • 🔢 Što je to: Dodaje brojač svakoj stavci iterabilnog objekta, vraćajući parove indeks-vrijednost.
  • Sintaksa: enumerate(iterable, startIndex) prima iterabilan objekt plus opcionalni početni broj.
  • 🔟 Prilagođeni početak: startIndex postavlja gdje počinje brojanje; izostavite ga za početak od 0.
  • 🔁 WCping: Uparite ga s for-petljom kako biste zajedno čitali indeks i vrijednost.
  • ???? Bilo koja iterabilna vrijednost: Radi na listama, n-torkama, nizovima znakova i rječnicima.
  • 🤖 Pomoć umjetne inteligencije: Copilot i AI alati automatski dovršavaju petlje enumerate() i refaktoriraju ručne brojače.

Funkcija Enumerate() u Python

Što je Python Nabrojati?

Python Nabrojati() je ugrađena funkcija dostupna s Python knjižnica. Uzima zadani unos kao kolekciju ili torke i vraća ga kao objekt nabrajanja. The Python Naredba Enumerate() dodaje brojač svakoj stavci iterabilnog objekta i vraća objekt enumerate kao izlazni niz.

Sintaksa od Python nabrojati()

enumerate(iterable, startIndex)

Parametri

Tri parametra su:

  • Iterativ: objekt koji se može petljati.
  • StartIndex: (neobavezno) Brojanje će započeti s vrijednošću danom u startIndexu za prvu stavku u petlji i povećavati je za sljedeću stavku dok ne dođe do kraja petlje.

Međutim, ako startIndex nije naveden, brojanje će početi od 0.

Povratna vrijednost

Vratit će iterableobject, s countvalue za svaku od stavki u iteratorobject koji je dan kao ulaz.

Nabroji() u Python Primjer

Metoda Enumerate dolazi s automatskim brojačem/indeksom za svaku od stavki prisutnih na popisu Enumerate u Python. Vrijednost firstindex počet će od 0. Također možete navesti startindex korištenjem opcijskog parametra startIndex u enumerate.
Primjer
U donjem kodu, mylist je popis dan funkciji Enumerate u Python, funkcija list(). koristi se za prikaz Enumerate Python izlaz.

Bilješka: Ne koristi se startIndex stoga će indeks za prvu stavku početi od 0.

Izlaz iz enumerate bit će na sljedeći način:

(0, item_1), (1, item_2), (2, item_3), … (n, item_n)

Datoteka: python_enumerate.py

mylist = ['A', 'B' ,'C', 'D']
e_list = enumerate(mylist)
print(list(e_list))

Izlaz:

[(0, 'A'), (1, 'B'), (2, 'C'), (3, 'D')]

UsingEnumerate() na popisu s startIndexom

U donjem primjeru, početni indeks zadan kao 2. Indeks prve stavke počet će od zadanog početnog indeksa.

Primjer:

U donjem primjeru, mylist je popis dan za nabrajanje. Funkcija list() koristi se za prikaz izlaza enumerate.

mylist = ['A', 'B' ,'C', 'D']
e_list = enumerate(mylist,2)
print(list(e_list))

Izlaz:

[(2, 'A'), (3, 'B'), (4, 'C'), (5, 'D')]

WCping Preko objekta Enumerate

Primjer prikazuje nabrajanje preko objekta sa i bez startIndexa.

  • Prva for-petlja nema startIndex, tako da indeks počinje od 0.
  • Druga for-petlja ima startIndex kao 10, tako da indeks počinje od 10.

Primjer:

mylist = ['A', 'B' ,'C', 'D']

for i in enumerate(mylist):
  print(i)
  print("\n")

print("Using startIndex as 10")    

for i in enumerate(mylist, 10):
  print(i)
  print("\n")

Izlaz:

(0, 'A')
(1, 'B')
(2, 'C')
(3, 'D')

Using startIndex as 10
(10, 'A')
(11, 'B')
(12, 'C')
(13, 'D')

Nabrajanje torke

U donjem primjeru možete koristiti tuple unutar enumerate. Također možete koristiti startIndex, a ključ za svaku stavku počet će od startIndexdanog.

Prema zadanim postavkama, startIndex je 0. Tamo, stoga vidite ključ kao 0 za stavke A i 1 za B i tako dalje.

Primjer:

my_tuple = ("A", "B", "C", "D", "E")
for i in enumerate(my_tuple):
  print(i)

Izlaz:

(0, 'A')
(1, 'B')
(2, 'C')
(3, 'D')
(4, 'E')

Nabrajanje niza

In Python, niz je niz i stoga možete prelaziti preko njega. Ako proslijedite niz u enumerate(), izlaz će vam pokazati indeks i vrijednost za svaki znak niza.

Primjer:

my_str = "Guru99 "
for i in enumerate(my_str):
  print(i)

Izlaz:

(0, 'G')
(1, 'u')
(2, 'r')
(3, 'u')
(4, '9')
(5, '9')

Nabroji rječnik

In Python, rječnik je naveden u vitičastim zagradama, unutar tih vitičastih zagrada deklarirane su vrijednosti.

Svaki element je par ključ/vrijednost i odvojen je zarezima. Možete koristiti rječnik unutar enumerate() i vidjeti izlaz.

my_dict = {"a": "PHP", "b":"JAVA", "c":"PYTHON", "d":"NODEJS"}
for i in enumerate(my_dict):
  print(i)

Izlaz:

(0, 'a')
(1, 'b')
(2, 'c')
(3, 'd')

Prednosti korištenja Enumerate

Ovdje su prednosti/prednosti korištenja Enumerate in Python:

  • Enumerate vam omogućuje kretanje kroz popis, tuple, rječnik, niz i daje vrijednosti zajedno s indeksom.
  • Da biste dobili vrijednost indeksa pomoću for-petlje, možete koristiti list.index(n). Međutim, list.index(n) je vrlo skup jer će dvaput proći for-petlju. Enumerate je vrlo koristan u tom slučaju jer daje indeks i stavke u jednom potezu.

Pitanja i odgovori

enumerate() je ugrađena funkcija koja dodaje brojač iterabilnoj objezi poput liste, tuplea, stringa ili rječnika, vraćajući parove indeks-vrijednost.

Sintaksa je enumerate(iterable, startIndex). Iterable je bilo koji objekt koji se može ponavljati u petlji; startIndex je opcionalni početni broj. Bez njega, brojanje počinje od 0.

Proslijedite drugi argument, poput enumerate(mylist, 2). Brojanje tada počinje od te vrijednosti umjesto od 0, tako da prva stavka dobiva indeks 2.

Da. Prosljeđivanje rječnika prolazi kroz njegove ključeve, uparujući svaki s indeksom. Nabrojite items() rječnika kada vam trebaju i vrijednosti.

enumerate() je čišći i brži od ručnog indeksiranja ili list.index(n), koje skenira dva puta, vraćajući indeks i stavku zajedno.

AI asistenti poput GitHub Copilota automatski dovršavaju petlje enumerate(), predlažu startIndex i refaktoriraju ručne brojače, ubrzavajući idiomatske Python i hvatanje grešaka koje se razlikuju jedna za drugu.

Da. Linteri pokretani umjetnom inteligencijom automatiziraju ovo refaktoriranje, uočavajući obrasce range(len(x)) i prepisujući ih kao enumerate(x) za čišće i jasnije Pythonic petlje s identičnim ponašanjem.

enumerate() vraća objekt enumerate, iterator parova (indeks, vrijednost). Izravno ga pokreni u petlji ili ga omotajte u list() da biste vidjeli sve parove.

Sažmite ovu objavu uz: