Sobes.tech
Junior — Middle

Ar galite paaiškinti, kas yra funkcijos generatorius ir kaip jis naudojamas?

sobes.tech AI

Atsakymas iš AI

Generatoria funkcija yra specialus funkcijos tipas, kuris gali sustabdyti savo vykdymą ir grąžinti tarpinę reikšmę naudojant raktinį žodį yield. Skirtingai nuo įprastų funkcijų, generatoriai leidžia iteruoti per reikšmių seką be būtinybės iš karto sukurti visą sąrašą atmintyje.

Pavyzdys Python:

def count_up_to(max):
    count = 1
    while count <= max:
        yield count
        count += 1

for number in count_up_to(5):
    print(number)

Čia funkcija count_up_to grąžina skaičius nuo 1 iki 5 po vieną. Tai naudinga dirbant su didelėmis arba begalinėmis sekų, taupant atmintį ir leidžiant apdoroti duomenis pagal poreikį.