Junior — Middle
Ce rezultat va fi obținut la finalizarea execuției unei funcții generator în Python?
sobes.tech AI
Răspuns de la AI
Când se finalizează execuția unei funcții generator în Python, se ridică o excepție StopIteration. Aceasta semnalează că generatorul și-a epuizat toate valorile și nu mai poate furniza altele.
Dacă iterezi peste generator într-un ciclu for, această excepție este gestionată automat și ciclul se încheie.
Exemplu:
def gen():
yield 1
yield 2
g = gen()
print(next(g)) # Afișează 1
print(next(g)) # Afișează 2
print(next(g)) # Ridică `StopIteration`
Prin urmare, StopIteration este modul standard de a semnala sfârșitul unui generator.