Python Hozam vs. Visszatérés

Python Yield Vs Return



A Python az utóbbi időben széles körben használt általános célú programozási nyelv. A hozam egy beépített Python kulcsszó, amelyet a generátor funkciók létrehozására használnak. Funkciója eredményeket generál. Megállítja a program végrehajtását, visszaküldi az eredményértéket a hívónak, és folytatja a végrehajtást az utolsó hozamtól. Ezenkívül a hozamfüggvény generált objektum formájában elküldi a generált eredménysorozatot. Másrészt a return is egy beépített kulcsszó a Pythonban, amely leállítja a funkciót, és visszaküldi az értéket a hívónak.

Ez a cikk példákkal mutatja be a hozam és a hozam közötti különbségeket.







Különbségek a hozam és a hozam között

Kezdetben sok kiemelkedő különbség van a hozam és a hozam között. Először beszéljük meg, mik ezek.



Visszatérés Hozam
A visszatérési utasítás csak egyetlen értéket ad vissza a hívónak. A hozamnyilatkozat egy sor eredményt adhat vissza a hívónak generátor objektum formájában.
A return kilép a függvényből, és ciklus esetén elveti a ciklust. Ez az utolsó utasítás, amelyet a függvénybe kell helyezni. Nem szünteti meg a függvény helyi változóit. Felfüggeszti a végrehajtást, és visszaküldi az értéket a hívónak, és folytatja a program végrehajtását az utolsó hozamnyilatkozattól.
Logikailag egy függvénynek csak visszatérési utasítással kell rendelkeznie. A függvényen belül több hozamnyilatkozat is lehet.
A visszatérési utasítás csak egyszer futhat. A hozamnyilatkozat többször is futtatható.
A visszatérési utasítás egy normál Python függvénybe kerül. A hozam utasítás egy normál függvényt generátor függvénnyé alakít.

1. példa: Visszatérés vs. hozam

Nézzük most példákon keresztül a hozam- és hozamnyilatkozatok közötti különbséget. Az alábbi példaprogramban több visszatérési utasítást használtunk. Megfigyelheti, hogy a program végrehajtása az első visszatérési utasítás után leáll, és a kód többi része nem lesz végrehajtva.



#egy program, amely bemutatja a visszatérési nyilatkozat működését

#definál egy számváltozót

szám1=10

#definál egy számváltozót

szám2=húsz

#függvény létrehozása aritmetikai műveletek végrehajtásához

def mathOP():

#az összegérték kiszámítása

Visszatérésszám1+szám2

#a különbség kiszámítása

Visszatérésszám1-szám2

#a szorzási érték kiszámítása

Visszatérésszám1*szám2

#az osztási érték kiszámítása

Visszatérésszám1/szám2

#a függvény hívása

nyomtatás(mathOP())

Kimenet





A kimeneten látható, hogy a függvény csak az első értéket adja vissza, és a program leáll.



Hasonló feladat végrehajtásához több visszatérési utasítással négy különböző függvényt kell létrehoznunk az aritmetikai műveletek minden típusához.

#egy program, amely bemutatja a visszatérési nyilatkozat működését

#definál egy számváltozót

szám1=10

#definál egy számváltozót

szám2=húsz

#függvény létrehozása aritmetikai műveletek végrehajtásához

def sumOP():

#az összegérték kiszámítása

Visszatérésszám1+szám2

def subtractOP():

#a különbség kiszámítása

Visszatérésszám1-szám2

def szorzásOP():

#a szorzási érték kiszámítása

Visszatérésszám1*szám2

def osztásOP():

#az osztási érték kiszámítása

Visszatérésszám1/szám2

#az összegfüggvény hívása

nyomtatás('Az összeg értéke:',sumOP())

#a kivonás függvény hívása

nyomtatás('A különbség értéke:',kivonniOP())

#a szorzási függvény hívása

nyomtatás('A szorzás értéke:',szorzásOP())

#az osztási függvény hívása

nyomtatás('A felosztási érték:',osztásOP())

Kimenet

Ezeket a többszörös számtani műveleteket egyetlen generátorfüggvényen belül hajthatjuk végre, több hozamnyilatkozattal.

#egy program, amely bemutatja a hozamnyilatkozat működését

#definál egy számváltozót

szám1=10

#definál egy számváltozót

szám2=húsz

#függvény létrehozása aritmetikai műveletek végrehajtásához

def mathOP():

#az összegérték kiszámítása

hozamszám1+szám2

#a különbség kiszámítása

hozamszám1-szám2

#a szorzási érték kiszámítása

hozamszám1*szám2

#az osztási érték kiszámítása

hozamszám1/szám2

#a függvény hívása

nyomtatás('Az értékek nyomtatása:')

#használat a ciklushoz az értékek eléréséhez a generátor objektumból

számáramatekOP -ban vagyok():

nyomtatás(én)

Kimenet

2. példa: Visszatérés vs. hozam

Lássunk egy másik példát a hozam és a hozam kimutatásokra. A megadott példában van egy számlistánk, amelyet argumentumként továbbítunk a mod () függvénynek. Végezzük a modulus műveletet a listák mindegyik számán, és ellenőrizzük, hogy melyek ezek a számok, ha elosztjuk 10 -es visszatérési nullával, mint maradék értéket.

Először is valósítsuk meg ezt a példát a Python szkriptünkben a return utasítással.

#definálja a számok listáját

a listám=[10,húsz,25,30,35,40,ötven]

#definíció meghatározása a modulus művelet végrehajtásához

def mod(a listám):

számáraén a listámban:

#teljesítmény modulus működés

ha(én%10==0):

Visszatérésén

nyomtatás(ellen(a listám))

Kimenet

A visszatérési utasítás csak az első számot adja vissza a hívónak, és befejezi a funkció végrehajtását.

Most valósítsuk meg ugyanezt a példát a Python -szkriptünkben a hozamnyilatkozattal.

#definálja a számok listáját

a listám=[10,húsz,25,30,35,40,ötven]

#definíció meghatározása a modulus művelet végrehajtásához

def mod(a listám):

számáraén a listámban:

#teljesítmény modulus működés

ha(én%10==0):

#a hozamnyilatkozat

hozamén

számárai modban(a listám):

nyomtatás(én)

Kimenet

Következtetés

Összefoglalva, a hozam és a hozam két beépített Python kulcsszó vagy utasítás. A return utasítás arra szolgál, hogy az értéket visszaadja a hívónak egy függvényből, és leállítja a program végrehajtását, míg a hozamutasítás generátor objektumot állít elő, és a többszörös értékeket vissza tudja adni a hívónak anélkül, hogy megszakítaná a program végrehajtását. Ez a cikk példákkal sorolja fel a hozam- és hozamnyilatkozatok közötti minden lényeges különbséget.