Junior
161
Miks kasutame funktsiooni enumerate() järjestuse läbimiseks?
Vastus AI-lt
sobes.tech AI
enumerate() funktsioon kasutatakse järjestuse (nimekiri, tulp, string jne) üle iteratsiooniks ning samal ajal tagastab nii praeguse elemendi indeksi kui ka iseenda. See on kasulik, kui on vaja töötada nii elemendi positsiooni kui ka selle väärtusega.
enumerate() kasutamise eelised:
- Koodi loetavuse parandamine: Asendades otsese indeksi haldamise
range()abil ja elementidele indeksi järgi juurdepääsu, muudabenumerate()koodi arusaadavamaks. - "off-by-one"-vea riski vähendamine: Indeksi otsene haldamine võib viia vigadeni, kui indeks ületab vahemiku.
enumerate()seda võimalust väldib. - Tõhusus: Enamikel juhtudel on
enumerate()tõhusam viis indeksi ja väärtuse saamiseks kui käsitsi indeksi haldamine.
Kasutusnäide:
# Selle asemel:
my_list = ['õun', 'banaan', 'kirss']
for i in range(len(my_list)):
print(f"Indeks: {i}, Väärtus: {my_list[i]}")
# Kasutades enumerate:
my_list = ['õun', 'banaan', 'kirss']
for index, value in enumerate(my_list):
print(f"Indeks: {index}, Väärtus: {value}")
Samuti saab määrata indeksi algusväärtuse:
my_list = ['õun', 'banaan', 'kirss']
for index, value in enumerate(my_list, start=1): # Indeks algab 1-st
print(f"Indeks: {index}, Väärtus: {value}")