Python est très flexible avec les arguments.
Valeurs par défaut
Tu peux rendre certains arguments optionnels.
def saluer(nom, message="Salut"):
print(f"{message} {nom} !")
saluer("Pierre") # Affiche "Salut Pierre !"
saluer("Paul", "Bonjour") # Affiche "Bonjour Paul !"
Arguments nommés (Keyword Arguments)
Tu peux changer l'ordre si tu donnes le nom.
def profil(nom, age, ville):
print(f"{nom}, {age} ans, vient de {ville}")
profil(age=30, ville="Paris", nom="Marie") # Marche nickel
*args et **kwargs (Le mode Expert)
Parfois, tu ne sais pas combien d'arguments tu vas recevoir.
*args: Reçoit une liste d'arguments positionnels (Tuple).**kwargs: Reçoit un dictionnaire d'arguments nommés.
def addition_infinie(*nombres):
total = 0
for n in nombres:
total += n
return total
print(addition_infinie(1, 2, 3, 4, 5)) # 15