Dans Python3, il n'y a que des paramètres «*», comme dans l'exemple de définition de fonction suivant.
python
>>> def foo(*, x):
print(x)
La signification de cet usage est que pour le paramètre suivant *
, la manière de passer l'argument au format de mot-clé est forcée, et si l'argument est passé sans le mot-clé, l'erreur suivante se produira.
>>> foo(x=1)
1
>>> foo(1)
Traceback (most recent call last):
File "<pyshell#14>", line 1, in <module>
foo(1)
TypeError: foo() takes 0 positional arguments but 1 was given
Recommended Posts