**kwargs
Les arguments nommés en trop sont collectés dans un dictionnaire. Lis-les avec .get(key, default).
Syntaxe
def greet(name, **opts):return opts.get("title", "bot") + " " + name
- **opts ne collecte que les valeurs nommées, pas les positionnelles.
Exemple
def greet(name, **opts):
return opts.get("title", "bot") + " " + name
print(greet("Pip"))
print(greet("Pip", title="captain"))Sortie :
bot Pip captain Pip
Erreurs courantes
- Passer un second argument positionnel à une fonction qui n'a que **opts pour les extras est un TypeError.