Python este limbajul de programare general utilizat pe scară largă din vremurile recente. Randamentul este un cuvânt cheie Python încorporat care este utilizat pentru a crea funcțiile generatorului. Funcția sa generează o serie de rezultate. Se întrerupe executarea programului, trimite valoarea rezultatului înapoi către apelant și reia execuția de la ultimul randament. În afară de aceasta, funcția randament trimite seria de rezultate generate sub forma unui obiect generator. Pe de altă parte, returnarea este, de asemenea, un cuvânt cheie încorporat în Python care termină funcția și trimite valoarea înapoi către apelant.
Acest articol prezintă diferențele dintre randament și randamente cu exemple.
Diferențele dintre randament și rentabilitate
Pentru început, există multe diferențe importante între randament și randament. Să discutăm mai întâi ce sunt acestea.
Întoarcere | Randament |
---|---|
Declarația de returnare returnează apelantului o singură valoare. | Declarația de randament poate returna apelantului o serie de rezultate sub forma unui obiect generator. |
Întoarcerea iese din funcție și, în cazul unei bucle, închide bucla. Este ultima afirmație care trebuie plasată în interiorul funcției. | Nu elimină variabilele locale ale funcției. Suspendă execuția și trimite valoarea înapoi către apelant și continuă execuția programului de la ultima declarație de randament. |
În mod logic, o funcție ar trebui să aibă doar o declarație return. | În funcție ar putea exista mai multe declarații de randament. |
Declarația return poate rula doar o singură dată. | Declarația randament poate rula de mai multe ori. |
Instrucțiunea return este plasată într-o funcție Python obișnuită. | Declarația randament convertește o funcție regulată într-o funcție generator. |
Exemplul 1: randament vs. randament
Acum, să vedem diferența dintre declarațiile de rentabilitate și randament prin exemple. În exemplul de program dat mai jos, am folosit mai multe instrucțiuni de returnare. Puteți observa că execuția programului se va încheia după prima declarație de returnare, iar restul codului nu va fi executat.
#un program pentru a arăta funcționarea declarației de returnare
#definirea unei variabile numerice
num1=10
#definirea unei variabile numerice
num2=douăzeci
#crearea unei funcții pentru a efectua operații aritmetice
def mathOP():
#calcularea sumei
întoarcerenum1+num2
#calculând diferența
întoarcerenum1-num2
#calcularea valorii multiplicării
întoarcerenum1*num2
#calcularea valorii diviziunii
întoarcerenum1/num2
# apelarea funcției
imprimare(mathOP())
Ieșire
În ieșire, se poate vedea că funcția returnează doar prima valoare, iar programul este terminat.
Pentru a efectua o sarcină similară cu mai multe instrucțiuni de returnare, trebuie să creăm patru funcții diferite pentru fiecare tip de operație aritmetică.
#un program pentru a arăta funcționarea declarației de returnare#definirea unei variabile numerice
num1=10
#definirea unei variabile numerice
num2=douăzeci
#crearea unei funcții pentru a efectua operații aritmetice
def sumOP():
#calcularea sumei
întoarcerenum1+num2
def scade OP():
#calculând diferența
întoarcerenum1-num2
multiplicare defOP():
#calcularea valorii multiplicării
întoarcerenum1*num2
def divisionOP():
#calcularea valorii diviziunii
întoarcerenum1/num2
#calling funcția sumă
imprimare(„Valoarea sumă este:”,sumOP())
# apelarea funcției de scădere
imprimare(„Valoarea diferenței este:”,scade OP())
# apelând la funcția de multiplicare
imprimare(„Valoarea multiplicării este:”,multiplicareOP())
# apelarea funcției de divizare
imprimare(„Valoarea diviziunii este:”,diviziuneOP())
Ieșire
Putem efectua aceste operații aritmetice multiple într-o singură funcție generator cu declarații de randament multiple.
#un program pentru a arăta funcționarea declarației de randament#definirea unei variabile numerice
num1=10
#definirea unei variabile numerice
num2=douăzeci
#crearea unei funcții pentru a efectua operații aritmetice
def mathOP():
#calcularea sumei
Randamentnum1+num2
#calculând diferența
Randamentnum1-num2
#calcularea valorii multiplicării
Randamentnum1*num2
#calcularea valorii diviziunii
Randamentnum1/num2
# apelarea funcției
imprimare(„Tipărirea valorilor:”)
# folosind bucla pentru a accesa valorile din obiectul generator
pentrueu în mathOP():
imprimare(eu)
Ieșire
Exemplul 2: randament vs. randament
Să vedem un alt exemplu de declarații de rentabilitate și randament. În exemplul dat, avem o listă de numere care este transmisă funcției mod () ca argument. Efectuăm operația de modul pe fiecare număr de listă și verificăm care sunt acele numere atunci când sunt împărțite la 10 returnează zero ca valoare rămasă.
Mai întâi, să implementăm acest exemplu în scriptul nostru Python cu declarație return.
#definirea unei liste de numerelista mea=[10,douăzeci,25,30,35,40,cincizeci]
#definirea unei funcții pentru a efectua operația de modul
def mod(lista mea):
pentrueu în lista mea:
#funcționarea modulului performant
dacă(eu%10==0):
întoarcereeu
imprimare(împotriva(lista mea))
Ieșire
Declarația de returnare returnează primul număr către apelant și încetează executarea funcției.
Acum, să implementăm același exemplu în scriptul nostru Python cu declarația de randament.
#definirea unei liste de numerelista mea=[10,douăzeci,25,30,35,40,cincizeci]
#definirea unei funcții pentru a efectua operația de modul
def mod(lista mea):
pentrueu în lista mea:
#funcționarea modulului performant
dacă(eu%10==0):
#declarația randamentului
Randamenteu
pentrui în mod(lista mea):
imprimare(eu)
Ieșire
Concluzie
În concluzie, randamentul și randamentul sunt două cuvinte cheie sau instrucțiuni Python încorporate. Instrucțiunea return este utilizată pentru a returna valoarea apelantului dintr-o funcție și pune capăt execuției programului, în timp ce instrucțiunea de randament produce un obiect generator și poate returna valorile multiple apelantului fără a termina execuția programului. Acest articol enumeră toate diferențele importante dintre declarațiile de rentabilitate și randament, cu exemple.