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.