Sobes.tech
Junior — Middle

Vai jūs varētu izskaidrot, kas ir funkcijas ģenerators un kā tas tiek izmantots?

sobes.tech AI

Atbilde no AI

Generatora funkcija ir ir īpaša funkcijas veids, kas var pārtraukt savu izpildi un atgriezt starpposma vērtības, izmantojot atslēgvārdu yield. Atšķirībā no parastajām funkcijām, ģeneratori ļauj iterēt pār vērtību secību bez nepieciešamības uzreiz izveidot visu sarakstu atmiņā.

Piemērs Python:

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

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

Šeit funkcija count_up_to atgriež skaitļus no 1 līdz 5 pa vienam. Tas ir noderīgi darbā ar lielām vai bezgalīgām secībām, taupot atmiņu un ļaujot apstrādāt datus pēc nepieciešamības.