Salut,
Un callable Python accepte des paramètres positionnels (une liste de...) et des paramètres nommés (i.e. des paires clés/valeurs).
On peut mixer les choses, i.e. le prototype d'un callable pourrait très bien être:
f(a, b, *rest, c=False, **others_kwds)
i.e. on veut que l'appelant donne au moins a, b, on verra pour *rest.
c=False permet de donner une valeur par défaut à c et de ne pas obliger l'appelant à... quand à others_kwds rien n'est imposé dans le prototype: ce n'est que plus tard (après l'appel) qu'on s'en inquiétera.
Le tutoriel livré avec la doc de Python raconte cela très bien et donne quelque cas pratique d'utilisation intéressantes de cela.
- W
Partager