C'est bien d'afficher des résultats avec print(), mais la plupart des fonctions utiles que nous avons utilisées auparavant, comme max() ou math.sqrt(), n'affichent pas de valeur. Elles renvoient un résultat. max() renvoie le maximum parmi toutes les valeurs qui lui sont passées. math.sqrt() renvoie la racine carrée d'un nombre, que nous pouvons ensuite utiliser dans notre programme.
Pour renvoyer une valeur depuis une fonction, nous pouvons utiliser l'instruction return :
Nous pouvons définir des fonctions qui effectuent plus d'opérations dans leur corps avant de renvoyer :
def product(numbers):
res = 1
for n in numbers:
res *= n
return res
print(product([4, 5, 6])) # 120
print(product([-1, 0, 5])) # 0
Défi
On vous demande d'écrire une fonction appelée vote, qui renverra l'élément le plus fréquent parmi les 3 nombres qui lui sont passés. Si tous sont différents, la fonction doit renvoyer le premier.
L'entrée contient 3 nombres.
Le programme doit afficher un seul nombre — le plus fréquent, renvoyé par la fonction vote.