Passer plusieurs paramètres à une fonction en Python
Supposons que nous ayons une fonction qui accepte plusieurs paramètres numériques :
def func(num1, num2):
return num1 + num2
print(func1(2, 3))
Lors de l'appel de la fonction, les nombres donnés 2
et 3 seront affectés aux variables num1
et num2 respectivement.
Mais il y a des cas où il est nécessaire de passer
de nombreux paramètres lors de l'appel d'une fonction, dont le nombre
n'est pas connu à l'avance. En Python, il est possible
de définir, lors de la déclaration de la fonction, une seule
variable qui deviendra plus tard un tuple de tous les paramètres
passés lors de l'appel.
Pour cela, il faut précéder cette variable
du symbole *. Il est conventionnel de nommer cette variable
args, mais il est possible
de lui donner n'importe quel autre nom. Et pour
afficher tous les paramètres, il faut utiliser dans
le corps de la fonction cette variable, mais sans le
* :
def func(*args):
return args
print(func(1, 2, 3)) # affichera (1, 2, 3)
Ensuite, il est possible d'effectuer toutes autres opérations avec les paramètres obtenus. Obtenons leur somme :
def func(*args):
return sum(args)
print(func(1, 2, 3)) # affichera 6
Écrivez une fonction qui acceptera un nombre illimité de noms d'utilisateurs en tant que paramètres et les affichera dans la console sous forme de tuple.