一部のブリチンもキーワード引数を受け入れないように、コードがキーワード引数を受け入れないようにしようとしていますが、それができません。ここに、私の限られた理解による私の考えがあります:-
def somefunc(a,b):
print a,b
somefunc(10,20)
出力:
10 20
さて、次のように実行すると(これは関数定義でキーワード引数であるとは想定されていませんが、関数呼び出しを見ると、キーワード引数を受け入れる関数を呼び出す場合と同じ構文のようです) :
somefunc(b=10,a=20)
出力:
20 10
2つの質問があります:-
- 関数定義ではなく関数呼び出しを見ると
somefunc(b=10,a=20)
、これは通常の引数のみを受け入れる関数またはキーワード引数を受け入れる関数のいずれかであるように見えます。通訳は2つをどのように区別しますか? - 多くのビルトインのようにキーワード引数を受け入れないように、関数をフォームに変換することは可能ですか?
なぜ私はこれをしたいのですか? 私はこれができるかどうかをチェックしているだけなので、Pythonを深く理解する上で何も見逃すことはありません。Pythonがそれを許可するかどうかはわかりません。