8

私が使用してきたいくつかのオープン ソースには、関数宣言として以下の行があります。

def parse_query(クエリ=nil、オプション={}、モデル=nil)

「等号」記号はステートメントにどのような影響を与えますか? パラメータをオプションにするだけですか?

4

2 に答える 2

13

関数を呼び出す人がパラメータを指定しない場合、パラメータのデフォルト値を設定します。

于 2009-06-10T15:39:34.887 に答える
5

Python や C++ と同様に、パラメーター リストの等号を使用すると、既定のパラメーターを指定できます。たとえば、Python では次のようになります。

def hello_world(message="Hello World"):
    print "message = "+message

この関数を次のように呼び出します。

hello_world()

結果は次のとおりです。

message = Hello World

ただし、次のように関数を呼び出します。

hello_world("changed default")

結果:

message = changed default
于 2009-06-10T15:43:22.070 に答える