パラメータ:関数パラメータを定義
引数を:関数を呼び出し、引数
フォーム引数関係の間に:
- あなたは、参加者を結合本物のパラメータを呼び出すとき
- 結合関係は関数本体で使用することができます
- 実際の呼び出しは、仮パラメータ結合関係に参加するときにのみ有効になり、およびunbindへの呼び出しの終了後
値によって渡される引数:
#形式: FUNCが(1、2) #二つの形態: A. 1 = B 2 = FUNC(A、B) #三つの形式: FUNC(INT(」1' )、2)
引数の使用に関わる形:
場所パラメータ:
場所パラメータ:定義されている関数の定義は、左から右へ
特長:値を転送する必要があり、いくつかのパラメータの値があり、それにはいくつかの値を渡す必要があります
位置引数は:値渡し右の順に左から順に呼び出されたときに
特徴:順序に従って、対応するパラメータ値を渡します
DEF FUNC(X、Y): プリント(x、y)は FUNC(1.2)
キーワード引数:
キーワードパラメータ:キーの形式と値による関数呼び出しの値で
特徴:「変数名」の値と順序に従って値渡しすることはできません
DEF FUNC(X、Y): プリント(x、y)は FUNC(Y = 2、X = 1)
位置パラメータとキーワード引数を混ぜます:
1、引数の位置は、キーワード引数の前に配置する必要があります
FUNC(1、Y = 2)
図2に示すように、同一の缶にパラメータ値の複数を通過しません
FUNC(1、Y = 2、X = 3)#エラーデモ
デフォルトパラメータ:関数を定義するには、パラメータが割り当てられています
特徴:あなたが呼び出すことができないときはもちろん、割り当てが割り当てられて定義する場合、再割り当てすること
FUNC DEF(X、Y = 3): プリント(X、Y) パラメータ定義が割り当てられているが、関数が呼び出されるFUNC(X = 1、Y = 44444)#Yを再割り当てすることができます
デフ(名前、年齢、性別登録 = ' M'): 印刷(名前、年齢、性別) (18は、 '3つの銃')の登録を 登録する( '砲兵' ,. 19) レジスタ( '銃' ,. 19) レジスタ( 'は銃ません'、19 '女性')
デフォルトパラメータを使用してパラメータの位置をミキシング:
1、位置パラメータがデフォルトパラメータに残されなければなりません
DEF FUNC(Y = 2、X): 合格
2、デフォルトのパラメータの値をメモリアドレスを指定したと言うことは、正確な機能割り当て、で定義されています
M = 2 DEF FUNC(X、Y = M):Y#=> 2メモリアドレス 印刷(X、Yと M = 3333333333 。FUNC(1)
3、デフォルト値は、任意のタイプを指定することができますが、これは全体の混乱の機能ロジックを変更するであろうから、変数の型を使用することをお勧めしません。
関数の理想的な状態:外部コードの影響を受けない、唯一の機能そのものと関係を持っている関数を呼び出します。
DEF FUNC(X、Y、Z、L =なし): lはいずれもない場合: L = [] l.append(X) l.append(Y) l.append(Z) プリント(L) FUNC(1,2- 、3) FUNC(4,5,6) new_l = [111222] FUNC(1,2,3、new_l)
パラメータ(*および**使用)可変長
可変長関数呼び出しを指すは、値(引数)の数は、着信固定されていない
ので、引数、パラメータの割り当てとして使用され引数は受信に対応するパラメータのオーバーフローを持っている必要がありますため、に対応
可変長位置パラメータ
*パラメータ名:I引数を受け取るためのオーバーフロー位置、オーバーフローの位置は、実際の参加者がタプルとして保存されています*フォーマットは、[割り当て密接にパラメータ名が続く
*ヒールは任意の名前を付けることができますが、慣習は引数でなければなりません
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')
可変長キー・パラメータ
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)
III:実パラメータの種類は**であります
DEF FUNC(X、Y、** kwargsから): プリント(X、Y、kwargsから) FUNC(Y = 222、X = 111、= 333、B = 444) FUNC(** { 'と' 222 ' '333、' B「のX '111':4444})
ミックス*および**:*引数が** kwargsから前にしなければなりません
DEF指数(X、Y、Z):
プリント( 'インデックス= >>>'、X、Y、Z)
(*引数、** kwargsから)DEFラッパー#引数=(1)= {kwargsから'Z' :3、 'Y':2}
指数(*引数、** kwargsから)
#インデックス(*(1)、** { 'Z':3、 'Y':2})
#インデックス(1、Z = 3、Y = 2)
のラッパー(1、Z = 3、Y = 2)