Enumerate()-functie in Python: Loop, Tuple, String (voorbeeld)

Wat is Python Enumerate?

Python Opsommen() is een ingebouwde functie die beschikbaar is in de Python-bibliotheek. Het neemt de gegeven invoer als een verzameling of tupels en retourneert deze als een opsommingsobject. De opdracht Python Enumerate() voegt een teller toe aan elk item van het iterabele object en retourneert een enumerate-object als een uitvoerreeks.

Syntaxis van Python enumerate()

enumerate(iterable, startIndex)

parameters

Drie parameters zijn:

  • Iterable: een object dat in een lus kan worden geplaatst.
  • StartIndex: (optioneel) De telling begint met de waarde die is opgegeven in de startIndex voor het eerste item in de lus en wordt verhoogd voor het volgende item tot het einde van de lus wordt bereikt.

Als startIndex echter niet is opgegeven, begint de telling vanaf 0.

Winstwaarde

Het retourneert een itereerbaar object, met een telwaarde voor elk van de items van het iteratorobject dat als invoer is opgegeven.

Enumerate() in Python-voorbeeld

De Enumerate-methode wordt geleverd met een automatische teller/index voor elk van de items die aanwezig zijn in de Enumerate-lijst in Python. De waarde van firstindex begint vanaf 0. U kunt de startindex ook opgeven door de optionele parameter startIndex in enumerate te gebruiken.
Voorbeeld
In de onderstaande code is mylist de lijst die wordt gegeven aan de Enumerate-functie in Python. De lijst() functie wordt gebruikt om de Enumerate Python-uitvoer weer te geven.

Opmerking: Er wordt geen startIndex gebruikt, daarom begint de index voor het eerste item vanaf 0.

De uitvoer van enumerate staat in de following manier:

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

Bestand: python_enumerate.py

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

Output:

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

Enumerate() gebruiken in een lijst met startIndex

In het onderstaande voorbeeld wordt de startindex weergegeven als 2. De index van het eerste item begint vanaf de opgegeven startindex.

Voorbeeld:

In het onderstaande voorbeeld is mijnlijst de lijst die moet worden opgesomd. De functie list() wordt gebruikt om de opsommingsuitvoer weer te geven.

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

Output:

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

Looping over een Enumerate-object

In het voorbeeld ziet u het opsommen van een object met en zonder startIndex.

  • De eerste for-lus heeft geen startIndex, dus de index begint vanaf 0.
  • De tweede for-lus heeft startIndex als 10, dus de index begint vanaf 10.

Voorbeeld:

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")

Output:

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

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

Een tupel opsommen

In het onderstaande voorbeeld kunt u een tupel in een opsomming gebruiken. U kunt ook een startIndex gebruiken, en de sleutel voor elk item begint vanaf de startIndexgegeven.

Standaard is de startIndex 0. Daarom ziet u de sleutel als 0 voor items A en 1 voor B, enzovoort.

Voorbeeld:

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

Output:

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

Een string opsommen

In Python is de string een array, en daarom kun je er een loop overheen maken. Als u een string doorgeeft aan enumerate(), toont de uitvoer u de index en waarde voor elk teken van de string.

Voorbeeld:

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

Output:

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

Een woordenboek opsommen

In Python wordt een woordenboek gekruld weergegeven brackets, binnenin deze krullend brackets, worden de waarden gedeclareerd.

Elk element is een sleutel/waarde-paar en wordt gescheiden door komma's. U kunt een woordenboek binnen een enumerate() gebruiken en de uitvoer bekijken.

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

Output:

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

Voordelen van het gebruik van Enumerate

Hier zijn de voor- en voordelen van het gebruik van Enumerate in Python:

  • Met Enumerate kunt u een lijst, tuple, woordenboek en tekenreeks doorlopen en de waarden samen met de index weergeven.
  • Om de indexwaarde te verkrijgen met behulp van for-loop, kunt u gebruik maken van list.index(n). List.index(n) is echter erg duur omdat het de for-lus tweemaal zal doorlopen. Enumerate is in zo'n geval erg handig, omdat het de index en de items in één keer weergeeft.

Samengevat

  • De functie Enumerate() is een ingebouwde functie die beschikbaar is in Python. De functie Enumerate() voegt een teller toe aan elk item van het iterabele object en retourneert een enumerate-object.
  • In Opsomming in Python kunt u de startIndex opgeven, dat wil zeggen de teller waarvan u wilt dat de waarden beginnen.
  • Enumerate kan worden gebruikt om een ​​lijst, tupel, woordenboek en tekenreeks te herhalen.
  • Enumerate is erg handig als u de index en de waarde wilt hebben bij het doorlopen van een lijst, tuple, woordenboek, enz.
  • Enumerate wordt geleverd met een automatische teller/index voor elk van de items in de lijst. De eerste indexwaarde begint vanaf 0. U kunt de startindex ook opgeven door de optionele parameter startIndex in enumerate te gebruiken.
  • Als u een string doorgeeft aan enumerate(), toont de uitvoer u de index en waarde voor elk teken van de string.