Junior — Middle
Môžete vysvetliť, čo je generátor funkcií a ako sa používa?
sobes.tech AI
Odpoveď od AI
Generator funkcia je špeciálny typ funkcie, ktorá môže pozastaviť svoje vykonávanie a vrátiť medzičasové hodnoty pomocou kľúčového slova yield. Na rozdiel od bežných funkcií umožňuje generátor iterovať cez sekvenciu hodnôt bez nutnosti okamžite vytvárať celý zoznam v pamäti.
Príklad v Pythone:
def count_up_to(max):
count = 1
while count <= max:
yield count
count += 1
for number in count_up_to(5):
print(number)
Tu funkcia count_up_to vracia čísla od 1 do 5 jedno po druhom. Toto je užitočné pri práci s veľkými alebo nekonečnými sekvenciami, šetrí pamäť a umožňuje spracovávať dáta podľa potreby.