Sobes.tech
Junior — Middle

Kādus paņēmienus zini, lai izveidotu generatorus Python?

sobes.tech AI

Atbilde no AI

Pythonā ģeneratorus var izveidot galvenokārt divos veidos:

  1. Izmantojot atslēgvārdu yield funkcijā — funkcija ar yield atgriež ģeneratoru, kuru var iterēt.
def count_up_to(n):
    count = 1
    while count <= n:
        yield count
        count += 1

for number in count_up_to(5):
    print(number)
  1. Ģeneratora izteiksmes — līdzīgas sarakstu izteiksmēm, bet atgriež ģeneratoru vietā, nevis sarakstu.
squares = (x*x for x in range(5))
for square in squares:
    print(square)

Abi veidi ļauj lēni ģenerēt secības, taupot atmiņu.