Python Language Forcer l'utilisation de paramètres nommés


Exemple

Tous les paramètres spécifiés après le premier astérisque dans la signature de la fonction sont uniquement des mots clés.

def f(*a, b):
    pass

f(1, 2, 3)
# TypeError: f() missing 1 required keyword-only argument: 'b'

Dans Python 3, il est possible de placer un seul astérisque dans la signature de la fonction pour s'assurer que les arguments restants ne peuvent être transmis qu'avec des arguments de mots clés.

def f(a, b, *, c):
    pass

f(1, 2, 3)
# TypeError: f() takes 2 positional arguments but 3 were given
f(1, 2, c=3)
# No error