Python

Rendement Python vs. Revenir

Rendement Python vs. Revenir

Python est le langage de programmation généraliste largement utilisé ces derniers temps. Le rendement est un mot-clé Python intégré qui est utilisé pour créer les fonctions du générateur. Sa fonction génère une série de résultats. Il met en pause l'exécution du programme, renvoie la valeur du résultat à l'appelant et reprend l'exécution à partir du dernier rendement. En plus de cela, la fonction de rendement envoie la série de résultats générée sous la forme d'un objet générateur. D'autre part, le retour est également un mot-clé intégré dans Python qui termine la fonction et renvoie la valeur à l'appelant.

Cet article décrit les différences entre le rendement et les rendements avec des exemples.

Différences entre rendement et rendement

Pour commencer, il existe de nombreuses différences importantes entre le rendement et le rendement. Discutons d'abord de ce que sont ces.

Revenir Rendement
L'instruction return ne renvoie qu'une seule valeur à l'appelant. L'instruction yield peut renvoyer une série de résultats à l'appelant sous la forme d'un objet générateur.
Le retour quitte la fonction, et dans le cas d'une boucle, il rejette la boucle. C'est la dernière instruction à placer à l'intérieur de la fonction. Il n'abolit pas les variables locales de la fonction. Il suspend l'exécution et renvoie la valeur à l'appelant, et continue l'exécution du programme à partir de la dernière instruction yield.
Logiquement, une fonction ne devrait avoir qu'une instruction return. Il pourrait y avoir plus d'une déclaration de rendement à l'intérieur de la fonction.
L'instruction return ne peut s'exécuter qu'une seule fois. L'instruction yield peut s'exécuter plusieurs fois.
L'instruction return est placée dans une fonction Python normale. L'instruction yield convertit une fonction régulière en une fonction génératrice.

Exemple 1 : retour vs. Rendement

Voyons maintenant la différence entre les déclarations return et yield à travers des exemples. Dans l'exemple de programme ci-dessous, nous avons utilisé plusieurs instructions return. Vous pouvez observer que l'exécution du programme se terminera après la première instruction return, et le reste du code ne sera pas exécuté.

#un programme pour montrer le fonctionnement de l'instruction return

#définir une variable numérique

nombre1 =10
#définir une variable numérique

num2=20
#créer une fonction pour effectuer des opérations arithmétiques

def mathOP() :
#calculer la valeur de la somme

renvoie num1+num2
#calculer la différence

renvoie num1-num2
#calculer la valeur de multiplication

renvoyer num1*num2
#calculer la valeur de division

renvoie num1/num2
#appel de la fonction

print(mathOP())

Production

Dans la sortie, on peut voir que la fonction ne renvoie que la première valeur, et le programme est terminé.

Pour effectuer une tâche similaire avec plusieurs instructions de retour, nous devons créer quatre fonctions différentes pour chaque type d'opération arithmétique.

#un programme pour montrer le fonctionnement de l'instruction return

#définir une variable numérique

nombre1 =10
#définir une variable numérique

num2=20
#créer une fonction pour effectuer des opérations arithmétiques

def sumOP() :
#calculer la valeur de la somme

renvoie num1+num2
def soustraireOP() :
#calculer la différence

renvoie num1-num2
def multiplicationOP() :
#calculer la valeur de multiplication

renvoyer num1*num2
def divisionOP() :
#calculer la valeur de division

renvoie num1/num2
#appel de la fonction somme

print("La valeur de la somme est : ",sumOP())
#appel de la fonction de soustraction

print("La valeur de différence est : ",subtractOP())
#appel de la fonction de multiplication

print("La valeur de multiplication est : ",multiplicationOP())
#appel de la fonction de division

print("La valeur de division est : ",divisionOP())

Production

Nous pouvons effectuer ces multiples opérations arithmétiques dans une seule fonction génératrice avec plusieurs déclarations de rendement.

#un programme pour montrer le fonctionnement de la déclaration de rendement

#définir une variable numérique

nombre1 =10
#définir une variable numérique

num2=20
#créer une fonction pour effectuer des opérations arithmétiques

def mathOP() :
#calculer la valeur de la somme

rendement num1+num2
#calculer la différence

rendement num1-num2
#calculer la valeur de multiplication

rendement num1*num2
#calculer la valeur de division

rendement num1/num2
#appel de la fonction

print("Impression des valeurs :")
#utilisation de la boucle pour accéder aux valeurs de l'objet générateur

pour i dans mathOP() :
imprimer(i)

Production

Exemple 2 : retour vs. Rendement

Voyons un autre exemple d'instructions return et yield. Dans l'exemple donné, nous avons une liste de nombres qui est passé à la fonction mod() comme argument. Nous effectuons l'opération de module sur chaque nombre de la liste et vérifions quels sont ces nombres lorsqu'ils sont divisés par 10 renvoient zéro comme valeur de reste.

Tout d'abord, implémentons cet exemple dans notre script Python avec l'instruction return.

#définir une liste de nombres

maListe=[10,20,25,30,35,40,50]
#définir une fonction pour effectuer l'opération de module

def mod(maListe):
pour i dans myList :
#exécution de l'opération de module

si(i%10==0) :
je reviens
print(mod(maListe))

Production

L'instruction return ne renvoie que le premier numéro à l'appelant et termine l'exécution de la fonction.

Maintenant, implémentons le même exemple dans notre script Python avec l'instruction yield.

#définir une liste de nombres

maListe=[10,20,25,30,35,40,50]
#définir une fonction pour effectuer l'opération de module

def mod(maListe):
pour i dans myList :
#exécution de l'opération de module

si(i%10==0) :
#la déclaration de rendement

rendement je
pour moi dans mod(myList):
imprimer(i)

Production

Conclusion

En conclusion, le retour et le rendement sont deux mots-clés ou instructions Python intégrés. L'instruction return est utilisée pour renvoyer la valeur à l'appelant à partir d'une fonction et termine l'exécution du programme, tandis que l'instruction yield produit un objet générateur et peut renvoyer les valeurs multiples à l'appelant sans mettre fin à l'exécution du programme. Cet article répertorie toutes les différences importantes entre les déclarations de rendement et de rendement avec des exemples.

Comment afficher la superposition OSD dans les applications et jeux Linux en plein écran
Jouer à des jeux en plein écran ou utiliser des applications en mode plein écran sans distraction peut vous couper des informations système pertinente...
Top 5 des cartes de capture de jeu
Nous avons tous vu et aimé des gameplays en streaming sur YouTube. PewDiePie, Jakesepticye et Markiplier ne sont que quelques-uns des meilleurs joueur...
Comment développer un jeu sur Linux
Il y a dix ans, peu d'utilisateurs de Linux prédisaient que leur système d'exploitation préféré serait un jour une plate-forme de jeu populaire pour l...