Python avkastning vs. Komme tilbake

Python avkastning vs. Komme tilbake

Python er det mye brukte programmeringsspråket for generell formål. Utbyttet er et innebygd Python-nøkkelord som brukes til å lage generatorfunksjonene. Funksjonen genererer en serie resultater. Den tar en utførelse av programmet, sender resultatverdien tilbake til den som ringer og gjenopptar utførelsen fra siste avkastning. I tillegg til at avkastningsfunksjonen sender den genererte serien med resultater i form av et generatorobjekt. På den annen side er returen også et innebygd nøkkelord i Python som avslutter funksjonen og sender verdien tilbake til den som ringer.

Denne artikkelen skisserer forskjellene mellom avkastningen og avkastningen med eksempler.

Forskjeller mellom avkastning og avkastning

Til å begynne med er det mange fremtredende forskjeller mellom avkastningen og avkastningen. La oss først diskutere hva som er disse.

Komme tilbake Utbytte
Returerklæringen returnerer bare en enkelt verdi til den som ringer. Utbytteuttalelsen kan returnere en serie resultater til den som ringer i form av et generatorobjekt.
Returen går ut av funksjonen, og i tilfelle av en sløyfe avviser den loopen. Det er den siste uttalelsen som ble plassert inne i funksjonen. Det avskaffer ikke funksjonens lokale variabler. Den suspenderer utførelsen og sender verdien tilbake til den som ringer, og fortsetter utførelsen av programmet fra den siste avkastningserklæringen.
Logisk sett skal en funksjon bare ha en returerklæring. Det kan være mer enn en avkastningserklæring i funksjonen.
Returerklæringen kan bare kjøre en gang. Avkastningserklæringen kan kjøres flere ganger.
Returerklæringen er plassert i en vanlig Python -funksjon. Utbytteuttalelsen konverterer en vanlig funksjon til en generatorfunksjon.

Eksempel1: retur vs. Utbytte

La oss nå se forskjellen mellom retur- og avkastningsuttalelser gjennom eksempler. I eksempelprogrammet gitt nedenfor har vi brukt flere returuttalelser. Du kan observere at utførelsen av programmet vil avslutte etter den første returerklæringen, og at resten av koden ikke blir utført.

#et program for å vise arbeidet med returerklæringen
#definering av en tallvariabel
num1 = 10
#definering av en tallvariabel
num2 = 20
#Creating en funksjon for å utføre aritmetiske operasjoner
def Mathop ():
#beregning av sumverdien
return num1+num2
#beregning av forskjellen
Return num1-num2
#beregning av multiplikasjonsverdien
return num1*num2
#beregning av divisjonsverdien
Return num1/num2
#kalle funksjonen
Print (Mathop ())

Produksjon

I utgangen kan det sees at funksjonen bare returnerer den første verdien, og programmet avsluttes.

For å utføre en lignende oppgave med flere returuttalelser, må vi lage fire forskjellige funksjoner for hver type aritmetisk operasjon.

#et program for å vise arbeidet med returerklæringen
#definering av en tallvariabel
num1 = 10
#definering av en tallvariabel
num2 = 20
#Creating en funksjon for å utføre aritmetiske operasjoner
def sumop ():
#beregning av sumverdien
return num1+num2
def subractop ():
#beregning av forskjellen
Return num1-num2
def multiplicationOp ():
#beregning av multiplikasjonsverdien
return num1*num2
def divisjon ():
#beregning av divisjonsverdien
Return num1/num2
#Kalling av sumfunksjonen
Print ("Sumverdien er:", Sumop ())
#Kalling av subtraksjonsfunksjonen
Print ("Forskjellverdien er:", subtractop ())
#kalle multiplikasjonsfunksjonen
Print ("Multiplikasjonsverdien er:", MultiplicationOp ())
#Kalling av divisjonsfunksjonen
Print ("Divisjonsverdien er:", Divisionop ())

Produksjon

Vi kan utføre disse flere aritmetiske operasjonene i en enkelt generatorfunksjon med flere avkastningsuttalelser.

#et program for å vise arbeidet med avkastningserklæring
#definering av en tallvariabel
num1 = 10
#definering av en tallvariabel
num2 = 20
#Creating en funksjon for å utføre aritmetiske operasjoner
def Mathop ():
#beregning av sumverdien
avkastningsnum1+num2
#beregning av forskjellen
avkastningsnum1-num2
#beregning av multiplikasjonsverdien
avkastning num1*num2
#beregning av divisjonsverdien
avkastning num1/num2
#kalle funksjonen
print ("Skrive ut verdiene:")
#bruk for sløyfe for å få tilgang til verdiene fra generatorobjektet
for jeg i Mathop ():
trykk (i)

Produksjon

Eksempel2: retur vs. Utbytte

La oss se et annet eksempel på uttalelser om retur og avkastning. I det gitte eksemplet har vi en liste over tall som sendes til mod () -funksjonen som et argument. Vi utfører moduloperasjonen på hvert antall liste og sjekker hva som er tallene når de er delt på 10 returnerer null som en resten av verdien.

La oss først implementere dette eksemplet i Python -skriptet vårt med returerklæring.

#definering av en liste over tall
MyList = [10,20,25,30,35,40,50]
#definering av en funksjon for å utføre moduloperasjonen
def mod (myList):
for jeg i mylist:
#Performing av moduloperasjon
if (i%10 == 0):
Returner i
Print (Mod (MyList)))

Produksjon

Returerklæringen returner bare det første nummeret til den som ringer og avslutter utførelsen av funksjonen.

La oss nå implementere det samme eksemplet i Python -skriptet vårt med avkastningserklæringen.

#definering av en liste over tall
MyList = [10,20,25,30,35,40,50]
#definering av en funksjon for å utføre moduloperasjonen
def mod (myList):
for jeg i mylist:
#Performing av moduloperasjon
if (i%10 == 0):
#avkastningserklæringen
avkastning i
for jeg i mod (myList):
trykk (i)

Produksjon

Konklusjon

Avslutningsvis er avkastningen og avkastningen to innebygde Python-nøkkelord eller uttalelser. Returerklæringen brukes til å returnere verdien til den som ringer fra en funksjon og avslutter utførelsen av programmet, mens avkastningserklæringen produserer et generatorobjekt og kan returnere flere verdier til den som ringer uten å avslutte utførelsen av programmet. Denne artikkelen lister ned alle de fremtredende forskjellene mellom avkastning og avkastningsuttalelser med eksempler.