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ääratleminemyList=[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ääratleminemyList=[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.