Pythonに組み込まれている関数の多くは、キーワード引数を取りません。たとえば、chr
関数。
>>> help(chr)
Help on built-in function chr in module builtins:
chr(i, /)
Return a Unicode string of one character with ordinal i; 0 <= i <= 0x10ffff.
chr
キーワード引数を使用して値を渡そうとしても機能しません。
>>> chr(i=65)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: chr() takes no keyword arguments
関数の/
ヘルプテキストの文字は、chr
キーワード引数を受け取らないことを意味していることを私は知っています。
キーワード引数をとらない関数を定義するにはどうすればよいですか?そしてもちろん、引数を取る関数を定義したいのですが、位置引数だけです。
これはおそらく重複としてマークされますが、少なくともその方法で答えを得ることができます。この質問に対するStackOverflowの回答が見つかりません。
私が学んだもう1つの同様の機能は、位置引数をとらない関数を作成することです。
>>> def f(*, a, b):
... print(a, b)
...
>>> f(1, 2)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: f() takes 0 positional arguments but 2 were given
>>> f(a=1, b=2)
1 2
この質問は私の質問に似ていますが、実際には私の質問に答えていません。いくつかの組み込み関数のように、キーワード引数を受け入れない関数を定義する方法がまだわかりません。
ありますPEP 570 1は、純粋なPythonでの位置のみの引数を作成することはできませんので、唯一のドラフトで、。ただし、これはC forPythonで記述された関数で実行できます。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加