Forum Python

Fil d’Ariane du forum – Vous êtes ici :ForumLangage Python: Langage Pythonqu'est ce que *args et **kwargs …
Please or S’enregistrer to create posts and topics.

qu'est ce que *args et **kwargs ?

Bonjour les amis,
Je ne comprend pas ce que c'est les arguments *args et **kwargs! Quelqu'un peut -il me les expliquer avec des exemples simples

Les arguments *args et **kwargs en Python permettent de créer des fonctions flexibles, capables d'accepter un nombre variable d'arguments. Voici une explication simple de chacun avec des exemples pour clarifier leur utilisation.

1. Les arguments *args
*args est utilisé pour passer un nombre variable d'arguments positionnels à une fonction. Cela signifie que vous pouvez passer autant d'arguments que vous voulez à une fonction, et ceux-ci seront collectés dans un tuple.

Exemple de base avec *args :

def addition(*args):
return sum(args)

# Appel de la fonction
print(addition(1, 2, 3)) # Résultat : 6
print(addition(4, 5)) # Résultat : 9
print(addition(10)) # Résultat : 10

 

2. Les arguments **kwargs
**kwargs est utilisé pour passer un nombre variable d'arguments nommés à une fonction. Les arguments sont collectés dans un dictionnaire.

Exemple de base avec **kwargs :

def afficher_info(**kwargs):
for key, value in kwargs.items():
    print(f"{key} : {value}")

# Appel de la fonction avec des arguments nommés
afficher_info(nom="Najib", age=25, ville="Madrid")
"""Output:
nom : Najib
age : 25
ville : Madrid
"""