高度なアプリケーションPython--機能

まず、関数が変数に代入します

関数は、オブジェクトは、関数を変数に代入されたとき、あなたは変数を介して関数を呼び出すことができ、変数に割り当てることができます。

例:

試験DEF(X、Y):
	X * Yリターン

変数に割り当て位関数
A =テスト
プリント(A)
<0x00000000030187B8 ATテスト機能>#プリント
関数を呼び出すことによって#変数
印刷((2,3))
6位プリント

#戻り値はB機能に割り当てられている
Bテスト=(4,5)
プリント(B)
#20を印刷

上記の例では、我々は、(4,5)、A、この点試験で呼び出された関数に属するA =テスト可変点(2,3)=試験=試験の間の差を確認することができ、完全に可変(2,3)を呼び出し等、受信した可変テストに属する=テスト(4,5)、(4,5)の戻り値、もしテスト(4,5)、その後、ノーリターン値、A =なし、および=試験(4を行い、 5)プロセス、テスト(4,5)は、一度に行われます。

機能として第二に、関数パラメータ

簡単なコードを見てください:

DEF試験(X、Y)
	= X + Y 
	リターン2 * A 

製造プロセスは、この時点で頻繁に分離ロジックを変更することができ、頻繁にコードの変更、上記X + Yので、我々は、関数パラメータの関数として、この時間を使用する必要がある場合。

例:

DEF減算(X、Y):
	戻りX - Y 

DEF添加(X、Y):
	リターンX + Y 

DEFダブル(N):
	リターン2 * N- 

#以下のコードが使用される減算()と加算()関数は値としてを返しますダブル()パラメータ動的にコードを変更する
後和#2を乗算することにより
プリント(二重(また(2,3)))
#10印刷

減算後の#2を乗じて
プリント(二重(減算(6,2 ))) 印刷8

  

第三に、戻り値として関数を使用します

Pythonは他の関数への関数の戻り値として使用されます。

例:

NUM DEF(FN):
	DEF減算(X、Y):
		戻りXは、 - Y 
	DEF添加(X、Y):
		リターンX + Yの
        値に基づいて、#1 FNパラメータは、ローカル関数に戻さ
	IF FN == '減算':
		リターン減算
	他:
		加算戻る

NUM()関数を呼び出すときに、関数が入れ子に返す#を
= NUM(「減算」) #また、印刷を書く(NUM(「減算」)(5,1))
を印刷(( 5,2)) 印刷。3 

B = NUM( '追加')
プリント(B(2,4))
#6を印刷  

機能は、ローカルの機能の関数を返す上記のコード、定義NUM()関数は、NUM()関数は、減算()と加算()2つのローカル関数、NUM()の伝達関数を定義しますパラメータは、内部戻り値として二つの部分の機能のいずれかを選択しました。

 

四、ラムダ式

コードをより簡潔にすることができ、ラムダ式を使用して、ラムダ式が呼び出され、プログラムに渡すことができます。

ラムダ式の構文は次のとおりです。

ラムダ[パラメータリスト]:式

第3ドットコードは、ラムダ式は、例えば、ローカル機能を簡素化するために使用することができます。

#オリジナルコード
DEF NUM(FN):
	DEF減算(X、Y):
		リターンX - Y 
	DEF加算(X、Y):
		X + Y戻る
	:IFのFn == '減算' 
		リターン減算を
	、他:
		加算返す


#の簡素化をコードの後
:DEF NUM(FN)
	のFn == '減算'の場合:
		- :ラムダX、Yを返すY X 
	:他に
		、YをラムダXを返す:X + Yの

印刷(NUM( '減算')(5,2) )
#印刷3 
印刷(NUM( "ABC")(5,2)) プリント7

キーワードラムダ、ラムダ式を使用して、上記の単純化されたコードは、であり、ここで注意することは、単一のラインラムダ式式とすることができる、と定義するラムダキーワードを使用する必要があり、定義されています。ラムダ式は、使用後すぐにリリースされ、パフォーマンスが向上します。

おすすめ

転載: www.cnblogs.com/mingmingming/p/11084042.html