Python er det almindeligt anvendte programmeringssprog i nyere tid. Udbyttet er et indbygget Python-nøgleord, der bruges til at oprette generatorfunktionerne. Dens funktion genererer en række resultater. Det sætter programmets gennemførelse på pause, sender resultatværdien tilbage til den, der ringer op, og genoptager udførelsen fra det sidste udbytte. Derudover sender udbyttefunktionen den genererede række af resultater i form af et generatorobjekt. På den anden side er returneringen også et indbygget nøgleord i Python, der afslutter funktionen og sender værdien tilbage til den, der ringer op.
Denne artikel skitserer forskellene mellem afkast og afkast med eksempler.
Forskelle mellem afkast og retur
Til at begynde med er der mange fremtrædende forskelle mellem afkast og afkast. Lad os først diskutere, hvad der er disse.
Vend tilbage | Udbytte |
---|---|
Retursætningen returnerer kun en enkelt værdi til den, der ringer op. | Udbytteopgørelsen kan returnere en række resultater til den, der ringer op, i form af et generatorobjekt. |
Returen afslutter funktionen, og i tilfælde af en sløjfe afviser den sløjfen. Det er den sidste erklæring, der placeres inde i funktionen. | Det afskaffer ikke funktionens lokale variabler. Det suspenderer udførelsen og sender værdien tilbage til den, der ringer op, og fortsætter udførelsen af programmet fra den sidste udbytteopgørelse. |
Logisk set skal en funktion kun have en returerklæring. | Der kan være mere end en udbytteopgørelse inde i funktionen. |
Returnerklæringen kan kun køre én gang. | Renteopgørelsen kan køre flere gange. |
Retursætningen placeres i en almindelig Python-funktion. | Udbyttesætningen konverterer en regelmæssig funktion til en generatorfunktion. |
Eksempel 1: Retur vs. Udbytte
Lad os nu se forskellen mellem afkast- og afkastudtalelser gennem eksempler. I eksempelprogrammet nedenfor har vi brugt flere retursætninger. Du kan se, at eksekveringen af programmet afsluttes efter den første returneringserklæring, og resten af koden udføres ikke.
# et program til at vise funktionen af returopgørelsen#definerer en talvariabel
num1 = 10
#definerer en talvariabel
num2 = 20
#oprette en funktion til at udføre aritmetiske operationer
def mathOP ():
#beregner sumværdien
returnere num1 + num2
#beregner forskellen
returnere num1-num2
#beregner multiplikationsværdien
returnere num1 * num2
#beregner divisionsværdien
returnere num1 / num2
#opkald til funktionen
udskriv (mathOP ())
Produktion
I output kan det ses, at funktionen kun returnerer den første værdi, og programmet afsluttes.
For at udføre en lignende opgave med flere retursætninger er vi nødt til at oprette fire forskellige funktioner til hver type aritmetisk operation.
# et program til at vise funktionen af returopgørelsen#definerer en talvariabel
num1 = 10
#definerer en talvariabel
num2 = 20
#oprette en funktion til at udføre aritmetiske operationer
def sumOP ():
#beregner sumværdien
returnere num1 + num2
def subtraherer OP ():
#beregner forskellen
returnere num1-num2
def multiplikationOP ():
#beregner multiplikationsværdien
returnere num1 * num2
def divisionOP ():
#beregner divisionsværdien
returnere num1 / num2
# kalder sumfunktionen
print ("Summen er:", sumOP ())
# kalder subtraktionsfunktionen
print ("Forskellen er:", subtraherer OP ())
# kalder multiplikationsfunktionen
print ("Multiplikationsværdien er:", multiplicationOP ())
# kalder opdelingsfunktionen
print ("Opdelingsværdien er:", divisionOP ())
Produktion
Vi kan udføre disse flere aritmetiske operationer i en enkelt generatorfunktion med flere udsagn.
# et program til at vise funktionen af udbytteopgørelse#definerer en talvariabel
num1 = 10
#definerer en talvariabel
num2 = 20
#oprette en funktion til at udføre aritmetiske operationer
def mathOP ():
#beregner sumværdien
udbytte num1 + num2
#beregner forskellen
udbytte num1-num2
#beregner multiplikationsværdien
udbytte num1 * num2
#beregner divisionsværdien
udbytte num1 / num2
#opkald til funktionen
print ("Udskrivning af værdier:")
# bruger for loop for at få adgang til værdierne fra generatorobjektet
for jeg i mathOP ():
udskrive (i)
Produktion
Eksempel 2: Retur vs. Udbytte
Lad os se et andet eksempel på afkast- og afkastopgørelser. I det givne eksempel har vi en liste over tal, der sendes til mod () -funktionen som et argument. Vi udfører modulusoperationen på hvert nummer på listen og kontrollerer, hvad der er disse tal, divideret med 10 returnerer nul som en restværdi.
Lad os først implementere dette eksempel i vores Python-script med return statement.
#definerer en liste med talmyList = [10,20,25,30,35,40,50]
#definerer en funktion til at udføre modulusoperationen
def mod (myList):
for jeg i myList:
#performing modulus operation
hvis (i% 10 == 0):
returnere i
print (mod (myList))
Produktion
Retursætningen returnerer kun det første nummer til den, der ringer op, og afslutter udførelsen af funktionen.
Lad os nu implementere det samme eksempel i vores Python-script med udbytteerklæringen.
#definerer en liste med talmyList = [10,20,25,30,35,40,50]
#definerer en funktion til at udføre modulusoperationen
def mod (myList):
for jeg i myList:
#performing modulus operation
hvis (i% 10 == 0):
# udbytteopgørelsen
udbytte i
for jeg i mod (myList):
udskrive (i)
Produktion
Konklusion
Afslutningsvis er afkastet og udbyttet to indbyggede Python-nøgleord eller udsagn. Retursætningen bruges til at returnere værdien til den, der ringer op fra en funktion og afslutter udførelsen af programmet, medens udbyttesætningen producerer et generatorobjekt og kan returnere de flere værdier til den, der ringer op uden at afslutte udførelsen af programmet. Denne artikel viser alle de fremtrædende forskelle mellem afkast- og afkastopgørelser med eksempler.