Valeur renvoyée
return sort une valeur de la fonction. cups_left reçoit started et drank, et renvoie started - drank. cups_left(3, 1) est donc le nombre 2.
print est en dehors de la fonction et écrit ce qui est sorti. cups_left n'a pas de print à lui.
def cups_left(started, drank):
return started - drank
print(cups_left(3, 1))
L'écran affiche 2. C'est print qui l'a écrit, pas cups_left. Avec d'autres nombres, c'est cette différence qui sort. cups_left(3, 3) vaut 0, parce que 3 - 3 fait 0.
Une ligne sous return reste décalée et appartient à la fonction. Elle ne s'exécute pas pour autant. return quitte la fonction tout de suite, et Python n'atteint jamais cette ligne.
def cups_left(started, drank):
return started - drank
print("done")
print(cups_left(3, 1))
L'écran affiche 2. done n'est pas écrit. print("done") est décalé sous def, mais return a déjà quitté la fonction.
Sans return, rien ne sort, et le résultat est None. None veut dire : pas de valeur. greet écrit le nom et n'a pas de return. Le mot lida à l'écran vient de ce print intérieur. Le résultat de greet("lida") lui-même est None.
def greet(name):
print(name)
print(greet("lida"))
L'écran affiche lida, puis None. greet a écrit lida. Le print extérieur a écrit le résultat. Ce résultat est None, parce que greet n'a pas de return.
Trois utilisations, et ce qui sort de chacune. Dans la ligne de greet, c'est None, même si l'écran montre aussi lida. Ce lida est le print intérieur, pas le résultat.
📊 Ce qui sort
| Utilisation | Résultat |
|---|---|
| cups_left(3, 1) | 2 |
| cups_left(3, 3) | 0 |
| greet("lida") sans return | None |
La page suivante dit jusqu'où un nom vaut. Ici, on ne voit que la valeur qui sort.
Avant de répondre
- Qu'écrit print(cups_left(3, 1)) ?
- Que vaut cups_left(3, 3) ?
- print("done") est sous return. done est-il écrit ?
- greet n'écrit que le nom. Quelles deux lignes écrit print(greet("lida")) ?
La valeur qui sort
return started - drank fait du résultat ce nombre. print(cups_left(3, 1)) écrit 2, et cups_left(3, 3) vaut 0. Une ligne sous return ne s'exécute pas, donc done n'apparaît jamais. Sans return, print(greet("lida")) écrit lida, puis None.
🧠 Testez Vos Connaissances
Testez Vos Connaissances
Mettez-vous au défi avec ce quiz interactif et voyez à quel point vous comprenez le sujet
📝 Instructions
- Lisez chaque question attentivement
- Sélectionnez la meilleure réponse pour chaque question
- Vous pouvez refaire le quiz autant de fois que vous le souhaitez
- Votre progression sera affichée en haut