Piton

Python hozam

Python hozam

A hozam egy Python beépített kulcsszó, amely a függvény értékeit adja vissza. A függvény végrehajtása nincs befejezve. Ehelyett visszaadja az értéket a hívónak, és fenntartja a függvény végrehajtási állapotát. A függvény végrehajtása az utolsó hozamkimutatásból folytatódik. A hozam lehetővé teszi számunkra, hogy értékek sorozatát állítsuk elő, nem pedig egy értéket. A funkciótest belsejében használják. A hozamot tartalmazó függvényt generátorfüggvénynek nevezik.

Számos előnye van a kulcsszó hozamának. Például vezérli a memória elosztását és elmenti a helyi változó állapotot. Ez azonban növeli a kód összetettségét.

Ez a cikk példákkal magyarázza a hozam kulcsszó használatát.

A hozam szintaxisa

A hozamszintaxis egyszerű és egyértelmű. A hozamot a hozam kulcsszóval és a szintaxissal kezdjük az alábbiak szerint:

hozamérték

Példák

Most nézzünk meg példákat a hozamkimutatások használatának és működésének megértésére. Hagyományosan a return kulcsszó megszünteti a program végrehajtását és a végén visszaad egy értéket, míg a hozam visszaadja az értékek sorrendjét. Nem tárolja az értéket a memóriában, és futás közben adja vissza az értéket a hívónak. Az alábbi példában egy generátorfüggvény van meghatározva a szökőév meghatározásához. Ugrás az az év, amikor a néggyel osztható maradékként nullát ad vissza. A hozam kulcsszó visszaadja a szökőév értékét a hívónak. Amint megkapja az ugróév értékét, szünetelteti a program végrehajtását, visszaadja az értéket, majd folytatja a végrehajtást onnan, ahol leállították.

# generátor deklarálása a szökőév meghatározásához
def leapfunc (my_list):
én a listámban:
ha (i% 4 == 0):
# kihozatal
hozam i
# az évek listájának deklarálása
év_lista = [2010,2011,2012,2016,2020,2024]
print ("A szökőév értékeinek nyomtatása")
x-re a leapfunc-ban (év_lista):
nyomtatás (x)

Kimenet

A kimenet a szökőévek sorozatát mutatja.

Lássunk egy másik példát, ahol a generátor függvény különböző számokat és húrokat ad.

# generátorfüggvény deklarálása
def myfunc ():
hozam "Mark"
hozam "John"
hozam: "Taylor"
hozam "Ivan"
10. hozam
hozam 20
hozam 30
hozam 40
hozam 50
# hívás és iterálás a generátor funkción keresztül
i-re a myfunc-ban ():
# értékek nyomtatása
nyomtatás (i)

Kimenet

Vezessünk létre egy generátorfüggvényt a számsorozat kockaértékének kiszámításához és kinyomtatásához. A kockaértékeket 1-től 30-ig generáljuk.

# generátorfüggvény deklarálása a kockaérték kiszámításához
def calcube ():
val = 1
# a végtelen míg hurok
míg True:
# számoló kocka
hozam val * val * val
# növeli az értéket 1-gyel
val = val + 1
print ("A kockaértékek a következők:")
# a generátor funkció hívása
i számológépben ():
ha i> 30:
szünet
nyomtatás (i)

Kimenet

A kimeneten a kocka értéke kevesebb, mint 30.

Következtetés

A Yield egy beépített Python kulcsszó, amely nem szünteti meg a program végrehajtását és értékek sorozatát generálja. A visszatérő kulcsszóhoz képest a hozam kulcsszó több értéket produkál, és visszatér a hívóhoz. Ez a cikk példákkal ismerteti a Python hozamot.

Az 5 legjobb játékrögzítő kártya
Mindannyian láttuk és szerettük a YouTube-on a streaming játékokat. A PewDiePie, a Jakesepticye és a Markiplier csak néhány a legnépszerűbb játékosok ...
Hogyan lehet játékot fejleszteni Linuxon
Egy évtizeddel ezelőtt nem sok Linux-felhasználó jósolta, hogy kedvenc operációs rendszerük egy napon a videojátékok népszerű játékplatformja lesz. El...
Kereskedelmi játékmotorok nyílt forráskódú portjai
Ingyenes, nyílt forráskódú és platformokon átívelő játékmotorok szabadidős programjai felhasználhatók a régi, valamint a meglehetősen friss játékcímek...