まず、機能は何ですか
関数を繰り返し呼び出すことができるツールに似ています。
第二に、なぜ機能しなければなりません
コードの冗長性を予防すること、可読性が悪いです。
第三に、使用
3.1
1つの定義関数-----> wapenを作ります
2つの通話機能----->それを使用
##関数と変数の名前を命名、それが有意義必要です。
三つのカテゴリーIV機能
4.1引数なしの関数に
DEF FUNC(): #は、()はパラメータを持っていない 印刷(' Hello Worldの' ) FUNCを()
4.2空の関数
DEFの関数func2(): 合格 #代わりに最初のパスでコードブロックを、空の関数 関数func2()
4.3関数のパラメータがあります。
DEFの関数func1(A、B): # ()基準関数とパラメータを使用して プリント(A、B) 関数func1( 1,2) #A = B = 2 1
変数に割り当てられた4.4関数名
DEFのFUNC3(): 印刷(' 豚の卵' ) 、F = FUNC3 #は、変数fに関数名を割り当てることによって、Fの呼び出しも、関数を呼び出すことができます (F)を
第五に、関数の戻り値
5.1は、リターンを書きません:リターンどれも
デフU(): プリント(1 ) #U()#1 の印刷(U()) #のなし
5.2書き込みだけリターン:唯一の終了コードの効果、またはnone
デフU(): プリント(1 ) リターン #U()#1 の印刷(U())# のなし
5.3書き込みリターンなし:およびaの上に同じ効果
デフU(): プリント(1 ) リターンなし #U()#1 の印刷(U()) #のなし
5.4戻り戻り値:戻り結果は変数名用途として使用することができます
DEF S(A、B): リターンA、B S( 1,2) #不可視結果 D = S(1,2) # 変数dの関数の結果は、結果を見ることができる 印刷(D) #(1、。 2)
5.5リターンリターン複数の値:5.5.1戻り、複数の値をデフォルトの元祖復帰へ
5.5.2関数がリターンを変更することはしたくありません
5.5.3は、リターンの独自のタイプを指定することができます
DEFの関数func1(): リターン。1、" 2 " の印刷(関数func1()) # (。1、 '2')は、先祖を返します
= 1 、B = 2 、C = ' 3 ' D = [4 ,. 5。] E = { ' 名前':' ショーン' } DEF FUNC(A、B、C、D、E): リターンA、B、C、 D、Eの プリント(FUNC(A、B、C、D、E)) #(1、2、、、{ '名前': 'ショーン'}」3' [4 ,. 5。])#指定された型を返します
## リターン機能マークコードの関数本体の端限り、リターンの実装であり、関数の終了が実行されます。
シックス関数のパラメータ
パラメータタイプ6.1
パラメータ:所定の関数定義フェーズに対するパラメータ、変数の定義と、変数名に対応します。
引数:関数のパラメータは、コールフェーズで変数定義された変数の等価な値を渡します。
DEFの FOO(A): #Aがパラメータである 印刷(A) (FOO。1) #1引数です。
6.2パラメータ渡しモード
6.2.1位置パラメータ:基準位置を介して継代しました。
DEF S(B): 戻り、Bの 印刷(S(1,2)) #(1、2)= 1、B = 2
6.2.2キーワード引数:指定質量参加のパラメータ。
DEF S(B): 戻り、Bの 印刷(S(B = 1、= 2)) #= 1、A = 2、B(2、1)
6.2.3デフォルトパラメータ:関数定義フェーズは、パラメータを渡された引数に新しいパラメータを渡された場合、それは新しいパラメータを使用します。***可変パラメータの種類を渡すことはできません。
DEF S(A、B、C = 3 ): リターンA、B、C S( 1,2 ) プリント(S(1,2)) # (。1、2、。3)デフォルトは、C = 3に出ています
DEF S(A、B、C = 3 ): リターンA、B、C #S(1,2、C = 4) プリント(S(1,2、C = 4)。) #(1,2 ,. 4)。 C = 4を指定し、指定した値が出します
6.2.4可変長引数
6.2.4.1 *引数 :オーバーフローのすべての位置のパラメータを受信するが、受信された値は、1元の祖先に格納されています。
デモンストレーション:
ソリューション:
#* Argsの DEF F(A、B、*引数): #受信オーバーフロー位置パラメータ プリント(A、B、引数) # 引数パラメータは、1元前駆にオーバーフローする F(1,2,3,4,5) #12(3、4、5)
DEF F(A、B、*引数): #受信オーバーフロー位置パラメータ プリント(A、B、*引数) # 引数パラメータが壊れてオーバーフローする F(1,2,3) #を1 2 3。
6.2.4.2 ** kwargsから :キーワード引数をオーバーフローさせ受信は、受信値がディクショナリに格納されています。
デモンストレーション:
ソリューション:
#** kwargsから DEF F(A、B、** kwargsから): 印刷(A、B、kwargsから) #1 kwargsから:辞書パラメータオーバーフロー戻ります (1、2、C = 3)F #1 {2 ' C「:3}
DEF F(A、B、kwargsから**): #は受信オーバーランキーワードパラメータ プリント(A、B、* kwargsから) #* kwargsから意志オーバーフローパラメータ辞書のキーリターン F(B = 1、A = 2 、C = 3) #2 1 C
## の効果*は:あなたが合格容器の種類を破ります