フォーム間のI.はじめ引数
パラメータ:定義フェーズ機能で定義された仮パラメータと呼ばれるパラメータは、変数名に対応する、パラメータと呼ばれます。
引数:実際のパラメータ値ステージと呼ばれる着信関数は、変数の値に相当する引数と呼びます。
フォーム引数との関係:
1、段階を呼び出すには、引数(変数値)は、パラメータ(変数名)にバインドされます。
図2に示すように、この結合関係は、関数の本体に使用することができます。
図3に示すように、アンバインド関数呼び出しの終了後に有効にするために関数呼び出しに関与する実際のパラメータとの関係を結合。
値の引数が渡され、その値は次の形式であってもよいです。
#:フォーム FUNC(1,2 ) #の形式2: 。A = 1 、B = 2 FUNC(A、B)# の形態3: FUNC(INT(' 1 ')、2 ) FUNC(関数func1( 1,2) 、関数func2(2,3)、333)
II。参加型の特定の使用引数
2.1位置パラメータ:パラメータ定義された位置パラメータに従って順に左から右へと呼ばれる
直接定義された順序で左から右に「変数名」に応じて、関数定義相:位置パラメータ
の特徴:値を転送する必要があり、ない1以上でも1つ少ないです。
DEF FUNC(X、Y): プリント(X、Y) #FUNC(1,2,3)#エラー #(1)FUNC#エラー
場所引数:コール位相関数、入ってくる値へ、左から順に従って、いくつかインチ
特長:順序パラメータ対応。
DEF FUNC(X、Y): プリント(x、y)は FUNC( 1,2) #X = 1、X = 2 FUNC(2,1) #X = 2、X = 1
2.2キーワードのパラメータ
キーワード引数:関数呼び出し相、キー=渡された値の値の形で
特徴:名前によってパラメータ値を渡すために、参照配列は、完全であることができます
DEF FUNC(X、Y): プリント(X、Y) FUNC(Y = 2、X = 1 ) FUNC( 1,2 ) #の混合物、強調 #1を、位置は、キーワード引数の引数の前に配置されなければならない FUNC (1、Y = 2 ) FUNC(Y = 2,1 ) #2、同一のパラメータ値について繰り返すことができる通過できない FUNC(1、Y = 2、X = 3 ) FUNC( 1,2、X = 3、 Y = 4)
2.3デフォルトパラメータ
デフォルトパラメータ:関数定義フェーズは、デフォルトパラメータと呼ばれるパラメータを、割り当てられています
特長:定義フェーズがすでに割り当てられている時には、コールがステージに値を割り当てることができないことを意味します
DEF FUNC(X、Y = 3。 ): 印刷(X、Y) #FUNC(X = 1) (。X = 1、Y = 44444 FUNC ) DEFレジスタ(名前、年齢、性別= ' M ' ): 印刷(名、年齢、性別) レジスタ(' 3つの銃'、18 ) レジスタ(' 大砲'、19 ) レジスタ(' 大砲'、19 ) レジスタ(' なし銃'、19、' 女性')
#フォームデフォルトパラメータミックスとの間の位置、強調した: #1、位置パラメータはデフォルトパラメータでなければならない左 DEF FUNC(Y = 2 、X): パス #2を、デフォルトのパラメータ値は、関数定義フェーズに割り当てられています、メモリアドレスの正確値与えられた #のモデルを1: M = 2 DEF FUNC(X、Y = M): #Y => 2のメモリ・アドレス・プリント(X、Yと M = 3333333333333333333 FUNC( 1 )#モデル2: M = [111111 、] DEF FUNC(X、Y = M): #Y => [111111、】メモリ・アドレス・プリント(X、Y) m.append( 3333333 ) FUNC( 1 )#3、ものの。デフォルト値は、任意のデータ型として指定することができますが、変数の型を使用することをお勧めしません。 #関数理想状態:関数を呼び出すだけ外部の影響コードせず、機能自体と関係を有する DEF FUNC(X、Y、Z、L =なし): #推奨 IF Lはしないなし: L = [] l.append (X) l.append(Y) l.append(Z) プリント(L)
2.4可変パラメータの長さ(*および**使用)
可変長の関数呼び出しを参照して、値の数(引数)は、着信固定されていません。引数はパラメータ割り付けに使用され、オーバーフローに対応する、実際のパラメータは、パラメータに対応する受信されなければなりません。
可変長パラメータ2.4.1位置
I:*パラメータ名:受信引数のオーバーフロー位置、実際の参加者はその後、パラメータ名の直後に割り当てられたタプル形式として保存されている*オーバーフローの位置
*ヒールは任意の名前かもしれないが、大会それは、引数でなければなりません。
DEF FUNC(X、Y、Z *): #Z =(3,4,5,6) プリント(X、Y、Z) FUNC( 1,2,3,4,5,6 ) DEF my_sum(* 引数): RES = 0 のための項目で引数: RES + = 項目 リターンRES RES = my_sum(1,2,3,4 ) プリント(RES)
II:*、位置に分割最初の引数*の値と引数、引数で使用することができます。
DEF 関数(X、Y、Z): プリント(X、Y、Z) #の操作(* [11,22,33])#動作(11,22,33) #の操作(* [11,22])#関数(11.22) L = [11,22,33 ] FUNC( L *)
III:実パラメータの種類はでマークされています*
DEF FUNC(X、Y、*引数): #引数=(3,4,5,6) プリント(X、Y、引数) FUNC( 1,2、[3,4,5,6 ]) FUNC( 1 、2、* [3,4,5,6]) #FUNC(1,2,3,4,5,6) FUNC(* ' ハロー')#1 FUNC( 'H'、 'E'、 'L' 、 'L'、 'O')
キーワードパラメータ2.4.2変数の長さ
I:**パラメータ名:直後のパラメータ名に割り当てられ、その後の保存形式辞書のキーワード引数にこぼれキーワード引数、**スピルオーバーを受信するための、および
**が続くことがあり任意の名前が、慣習があるべきkwargsから
DEF FUNC(X、Y、** kwargsから): プリント(X、Y、kwargsから) FUNC( 1、Y = 2、= 1、B = 2、C = 3)
II:**カテゴリーに分け、最初の引数の引数*、**の値と、引数(**かかとのみ辞書)で使用することができます
DEF FUNC(X、Y、Z): プリント(X、Y、Z) FUNC( * { ' X ':1、' Y ':2 ' Z ':3})#1 FUNC( 'X'、「Y 」、 'Z') FUNC(** { ' X ':1、' Y ':2 ' Z ':3})#1 FUNC(X = 1、Y = 2、Z = 3) #错误 FUNC(* * { ' X ':1、' Y ':2})#1 FUNC(X = 1、Y = 2) FUNC(** { [X ":1、' ':2 ' Z ':3})#1 FUNC(X = 1、= 2、Z = 3)
III:実パラメータの種類は**であります
DEF FUNC(X、Y、** kwargsから): プリント(X、Y、kwargsから) FUNC(及び = 222、X = 111、= 333、B = 444 ) FUNC( ** { ' と' 222、' X ':111 ' に' 333、' B ' 4444})。
#ミックス*および**:* argsをしなければなりません**前kwargsから DEF FUNC(X、* argsを、** kwargsから): 印刷(引数) を印刷(kwargsから) FUNC( 1,2,3,4,5,6、 7、8、X = 1、Y = 2、Z = 3。。 ) DEFの指数(X、Y、Z): プリント(' インデックス= >>> ' 、X、Y、Z) DEF(warpper *引数、** kwargsから): #引数=(1)= {kwargsから'Z' :. 3、 'Y':2}。 指数(*引数、** kwargsから) #1 。指数(*(1)、** { 'Z': 。3、 'Y':2}) #のインデックス(1 ,. 3 = Z、Y = 2)。 (ラッパー 1、Z = 3、Y = 2)。。 #パラメータをインデックスとラッパーに渡され #元のフォーマット- - 「要約-----」その色を表示