Quand tu crées un outil en Python, tu ne sais pas toujours combien de valeurs l'utilisateur va fournir. Un calcul de moyenne peut porter sur 3 notes comme sur 30. Grâce à *args, ta fonction accepte autant d'arguments qu'on veut.
Quand tu mets une étoile devant le paramètre, Python rassemble tous les arguments dans un tuple : def afficher(*args): print(args)
afficher(1, 2, 3) affiche (1, 2, 3)
Comme args est un tuple, sum() calcule la somme et len() donne le nombre d'éléments.
Écris une fonction moyenne(*args) qui calcule la moyenne de tous les arguments reçus. Si aucun argument n'est passé, renvoie 0.
Exemple : moyenne(10, 20, 30) renvoie 20.0 moyenne() renvoie 0
Tests (3/4)
Trois nombres
assert moyenne(10, 20, 30) == 20.0
Un nombre
assert moyenne(5) == 5.0
Aucun argument
assert moyenne() == 0
+ 0 tests cachés
Indices (3 disponibles)
Solution officielle
def moyenne(*args):
if not args:
return 0
return sum(args) / len(args)