Pythoni tootlus vs tulu

Python Yield Vs Return



Python on viimasel ajal laialdaselt kasutatav üldotstarbeline programmeerimiskeel. Saagikus on sisseehitatud Pythoni märksõna, mida kasutatakse generaatori funktsioonide loomiseks. Selle funktsioon loob rea tulemusi. See peatab programmi täitmise, saadab tulemuse väärtuse helistajale tagasi ja jätkab täitmist viimasest saagist. Lisaks saadab saagisfunktsioon genereeritud tulemuste jada generaatorobjekti kujul. Teisest küljest on tagastus ka Pythoni sisseehitatud märksõna, mis lõpetab funktsiooni ja saadab väärtuse tagasi helistajale.

Selles artiklis tuuakse näidetega välja erinevused tootluse ja tootluse vahel.







Erinevused tootluse ja tootluse vahel

Alustuseks on tootluse ja tootluse vahel palju silmatorkavaid erinevusi. Arutame kõigepealt, mis need on.



Tagasi Saagis
Tagastusavaldus tagastab helistajale ainult ühe väärtuse. Saagikuse avaldus võib helistajale tagastada rea ​​tulemusi generaatorobjekti kujul.
Tagasipöördumine väljub funktsioonist ja tsükli korral loobub tsükkel. See on viimane avaldus, mis funktsiooni sisse paigutatakse. See ei tühista funktsiooni kohalikke muutujaid. See peatab täitmise ja saadab väärtuse tagasi helistajale ning jätkab programmi täitmist alates viimasest tootlusavaldusest.
Loogiliselt võttes peaks funktsioonil olema ainult tagastuslause. Funktsiooni sees võib olla rohkem kui üks tulususavaldus.
Tagastusavaldust saab esitada ainult ühe korra. Tootlusaruanne võib käia mitu korda.
Tagastusavaldus paigutatakse tavalise Pythoni funktsiooni sisse. Saagisavaldus muudab tavalise funktsiooni generaatori funktsiooniks.

Näide 1: tootlus vs saagikus

Vaatame nüüd näidete kaudu erinevust tootluse ja tootluse avalduste vahel. Allpool toodud näidisprogrammis oleme kasutanud mitut tagastusavaldust. Võite täheldada, et programmi täitmine lõpeb pärast esimest tagastamislauset ja ülejäänud koodi ei täideta.



#programm tagastamisavalduse toimimise näitamiseks

#arvumuutuja määratlemine

num1=10

#arvumuutuja määratlemine

num2=kakskümmend

#funktsiooni loomine aritmeetiliste toimingute tegemiseks

def mathOP():

#summa väärtuse arvutamine

tagasinum1+num2

#arvestame erinevust

tagasinum1-num2

#korrutusväärtuse arvutamine

tagasinum1*num2

#jaotusväärtuse arvutamine

tagasinum1/num2

#funktsiooni kutsumine

printida(mathOP())

Väljund





Väljundis on näha, et funktsioon tagastab ainult esimese väärtuse ja programm lõpetatakse.



Sarnase ülesande täitmiseks mitme tagastuslausega peame looma iga aritmeetilise toimingu tüübi jaoks neli erinevat funktsiooni.

#programm tagastamisavalduse toimimise näitamiseks

#arvumuutuja määratlemine

num1=10

#arvumuutuja määratlemine

num2=kakskümmend

#funktsiooni loomine aritmeetiliste toimingute tegemiseks

def sumOP():

#summa väärtuse arvutamine

tagasinum1+num2

def lahutage OP():

#arvestame erinevust

tagasinum1-num2

def korrutamine OP():

#korrutusväärtuse arvutamine

tagasinum1*num2

def jaotusOP():

#jaotusväärtuse arvutamine

tagasinum1/num2

#summafunktsiooni kutsumine

printida('Summa väärtus on:',sumOP())

#lahutamisfunktsiooni kutsumine

printida('Erinevuse väärtus on järgmine:',lahutage OP())

#korrutamisfunktsiooni kutsumine

printida('Korrutusväärtus on järgmine:',korrutamine OP())

#jagamisfunktsiooni kutsumine

printida('Jaotuse väärtus on:',jaotusOP())

Väljund

Saame neid mitmeid aritmeetilisi toiminguid teha ühe generaatorifunktsiooni sees mitme saagise avaldusega.

#programm, mis näitab tootlikkuse avalduse toimimist

#arvumuutuja määratlemine

num1=10

#arvumuutuja määratlemine

num2=kakskümmend

#funktsiooni loomine aritmeetiliste toimingute tegemiseks

def mathOP():

#summa väärtuse arvutamine

saagikusnum1+num2

#arvestame erinevust

saagikusnum1-num2

#korrutusväärtuse arvutamine

saagikusnum1*num2

#jaotusväärtuse arvutamine

saagikusnum1/num2

#funktsiooni kutsumine

printida('Väärtuste printimine:')

#kasutades tsüklit generaatoriobjekti väärtustele juurde pääsemiseks

eestma matemaatikas():

printida(i)

Väljund

Näide2: tootlus vs saagikus

Vaatame veel üht näidet tootluse ja tootluse kohta. Antud näites on meil numbrite loend, mis edastatakse argumendina funktsioonile mod (). Teostame moodulitehte iga loendi numbriga ja kontrollime, millised on need numbrid jagatuna 10 -ga, tagastades jääkväärtuseks.

Esiteks rakendame selle näite meie Pythoni skriptis koos tagasivõtmise avaldusega.

#numbrite loendi määratlemine

myList=[10,kakskümmend,25,30,35,40,viiskümmend]

#mooduli toimingu tegemiseks funktsiooni määratlemine

def mod(myList):

eestolen oma nimekirjas:

#mooduli töö

kui(i%10==0):

tagasii

printida(vastu(myList))

Väljund

Tagastusavaldus tagastab helistajale ainult esimese numbri ja lõpetab funktsiooni täitmise.

Nüüd rakendame sama näidet meie Pythoni skriptis koos saagise avaldusega.

#numbrite loendi määratlemine

myList=[10,kakskümmend,25,30,35,40,viiskümmend]

#mooduli toimingu tegemiseks funktsiooni määratlemine

def mod(myList):

eestolen oma nimekirjas:

#mooduli töö

kui(i%10==0):

#tootlusaruanne

saagikusi

eestolen modis(myList):

printida(i)

Väljund

Järeldus

Kokkuvõtteks võib öelda, et tootlus ja tootlus on kaks sisseehitatud Pythoni märksõna või avaldust. Tagastusavaldust kasutatakse funktsioonilt helistajale väärtuse tagastamiseks ja programmi täitmise lõpetamiseks, samal ajal kui tootlusaruanne tekitab generaatoriobjekti ja saab helistajale tagastada mitu väärtust ilma programmi täitmist lõpetamata. Selles artiklis on näidetega loetletud kõik olulised erinevused tootluse ja tootluse avalduste vahel.