Sobes.tech
Junior — Middle

Czy możesz wyjaśnić, czym jest generator funkcji i jak jest używany?

sobes.tech AI

Odpowiedź od AI

Generator funkcji to specjalny typ funkcji, który może wstrzymywać swoje wykonanie i zwracać wartości pośrednie za pomocą słowa kluczowego yield. W przeciwieństwie do zwykłych funkcji, generatory pozwalają na iterację po sekwencji wartości bez konieczności tworzenia całej listy od razu w pamięci.

Przykład w Pythonie:

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

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

Tutaj funkcja count_up_to zwraca liczby od 1 do 5 po jednym. Jest to przydatne przy pracy z dużymi lub nieskończonymi sekwencjami, oszczędzając pamięć i pozwalając na przetwarzanie danych na bieżąco.