Python on viime aikoina yleisesti käytetty yleiskäyttöinen ohjelmointikieli. Tuotto on sisäänrakennettu Python-avainsana, jota käytetään generaattoritoimintojen luomiseen. Sen toiminta tuottaa sarjan tuloksia. Se keskeyttää ohjelman suorittamisen, lähettää tulosarvon takaisin soittajalle ja jatkaa suoritusta viimeisestä tuotosta. Sen lisäksi tuottofunktio lähettää generoidun tulossarjan generaattorikohteen muodossa. Toisaalta paluu on myös sisäänrakennettu avainsana Pythonissa, joka lopettaa toiminnon ja lähettää arvon takaisin soittajalle.
Tässä artikkelissa hahmotellaan tuoton ja tuoton erot esimerkkien avulla.
Erot tuoton ja tuoton välillä
Ensinnäkin tuoton ja tuoton välillä on monia merkittäviä eroja. Keskustellaan ensin mitä nämä ovat.
Palata | Saanto |
---|---|
Palautuslauseke palauttaa soittajalle vain yhden arvon. | Tuottolauseke voi palauttaa sarjan tuloksia soittajalle generaattoriobjektin muodossa. |
Paluu poistuu toiminnosta, ja silmukan tapauksessa se sulkee silmukan. Se on viimeinen lause, joka sijoitetaan funktion sisälle. | Se ei poista funktion paikallisia muuttujia. Se keskeyttää suorituksen ja lähettää arvon takaisin soittajalle ja jatkaa ohjelman suorittamista viimeisestä tuottolausekkeesta. |
Loogisesti funktiolla tulisi olla vain return-lause. | Funktion sisällä voi olla useampia tuottolausekkeita. |
Palautuslauseke voidaan suorittaa vain kerran. | Tuottoilmoitus voidaan suorittaa useita kertoja. |
Palautuslauseke sijoitetaan tavallisen Python-funktion sisään. | Tuottolauseke muuntaa säännöllisen funktion generaattoritoiminnoksi. |
Esimerkki 1: Paluu vs. Saanto
Katsotaan nyt eroa tuotto- ja tuottolausekkeiden välillä esimerkkien avulla. Alla olevassa esimerkkiohjelmassa olemme käyttäneet useita palautuslausekkeita. Voit huomata, että ohjelman toteutus päättyy ensimmäisen palautuslausekkeen jälkeen, eikä loput koodia suoriteta.
#a ohjelma näyttää palautuslausekkeen toiminnan#määrittää numeromuuttujan
num1 = 10
#määrittää numeromuuttujan
num2 = 20
#funktion luominen aritmeettisten operaatioiden suorittamiseksi
def mathOP ():
#lasketaan summa-arvo
palauta numero1 + numero2
# lasketaan ero
palauta num1-num2
# lasketaan kertolasku
palaa num1 * num2
# jakoarvon laskeminen
palauta numero1 / numero2
# kutsumalla toimintoa
tulosta (mathOP ())
Tuotos
Lähdössä voidaan nähdä, että funktio palauttaa vasta ensimmäisen arvon ja ohjelma lopetetaan.
Samanlaisen tehtävän suorittamiseksi useilla palautuslausekkeilla meidän on luotava neljä erilaista toimintoa kullekin aritmeettisen operaation tyypille.
#a ohjelma näyttää palautuslausekkeen toiminnan#määrittää numeromuuttujan
num1 = 10
#määrittää numeromuuttujan
num2 = 20
#funktion luominen aritmeettisten operaatioiden suorittamiseksi
def sumOP ():
#lasketaan summa-arvo
palauta numero1 + numero2
def vähennäOP ():
# lasketaan ero
palauta numero1-num2
def kertolasku OP ():
# lasketaan kertolasku
palaa num1 * num2
def jakoOP ():
# jakoarvon laskeminen
palauta numero1 / numero2
#summaa funktio
tulosta ("Summan arvo on:", sumOP ())
# kutsu vähennysfunktiota
tulosta ("Eroarvo on:", vähennäOP ())
#soitetaan kertolaskufunktiolle
tulosta ("Kertolaskuarvo on:", kertolaskuOP ())
#kutsutaan jakamistoimintoa
tulosta ("Jakoarvo on:", jakoOP ())
Tuotos
Voimme suorittaa nämä useita aritmeettisia operaatioita yhden generaattoritoiminnon sisällä useilla tuottolausekkeilla.
#ohjelma näyttää tuottolausekkeen toiminnan#määrittää numeromuuttujan
num1 = 10
#määrittää numeromuuttujan
num2 = 20
#funktion luominen aritmeettisten operaatioiden suorittamiseksi
def mathOP ():
#lasketaan summa-arvo
tuotto numero1 + numero2
# lasketaan ero
tuotto num1-num2
# lasketaan kertolasku
tuotto num1 * num2
# jakoarvon laskeminen
tuotto numero1 / numero2
# kutsumalla toimintoa
tulosta ("Arvojen tulostaminen:")
#using for loop käyttää arvoja generaattoriobjektista
i: lle mathOP: ssä ():
tulosta (i)
Tuotos
Esimerkki 2: Paluu vs. Saanto
Katsotaanpa toinen esimerkki tuotto- ja tuottolausekkeista. Annetussa esimerkissä meillä on luettelo numeroista, joka välitetään mod () -funktiolle argumenttina. Suoritamme moduulitoiminnon jokaisessa luettelon numerossa ja tarkistamme, mitkä ovat nämä luvut jaettuna 10: llä, palauttaa nollan loppuarvona.
Ensinnäkin, toteutetaan tämä esimerkki Python-komentosarjassa palautuslausekkeella.
# määrittelee luettelon numeroistamyList = [10,20,25,30,35,40,50]
#definingin määritteleminen moduulitoiminnon suorittamiseksi
def mod (myList):
minulle i myList:
# suoritetaan moduulitoiminto
jos (i% 10 == 0):
paluu i
tulosta (mod (myList))
Tuotos
Palautuslauseke palauttaa soittajalle vain ensimmäisen numeron ja lopettaa toiminnon suorittamisen.
Toteutetaan nyt sama esimerkki Python-komentosarjassa tuottolausekkeella.
# määrittelee luettelon numeroistamyList = [10,20,25,30,35,40,50]
#definingin määritteleminen moduulitoiminnon suorittamiseksi
def mod (myList):
minulle i myList:
# suoritetaan moduulitoiminto
jos (i% 10 == 0):
#tuottoilmoitus
saanto i
i: lle modissa (myList):
tulosta (i)
Tuotos
Johtopäätös
Lopuksi tuotto ja tuotto ovat kaksi sisäänrakennettua Python-avainsanaa tai -lauseketta. Palautuslauseketta käytetään palauttamaan arvo soittajalle toiminnosta ja lopettamaan ohjelman suorittamisen, kun taas tuottolauseke tuottaa generaattoriobjektin ja voi palauttaa useita arvoja soittajalle keskeyttämättä ohjelman suorittamista. Tässä artikkelissa luetellaan kaikki merkittävät erot tuotto- ja tuottolausekkeiden välillä esimerkkein.