Pythonの@修飾子の役割は何ですか?パンツは恥を隠すために使用することができますが、冬には風や寒さから身を守ることができません。スマートの人々がパンツを発明しました。ズボンを身に着けた後、赤ちゃんはもう寒いではありません。装飾機器、私たちは私たちの体に暖かさを提供する機能に影響を与えることなく、ここにズボン、下着を、およそ話しているよう
Pythonはデコレータエッセンスの関数であり、それは、任意の追加のコードなしで追加の機能を変更することなく、他の機能を可能にします。デコレータの戻り値は、関数オブジェクトです。一般的に挿入ログ、性能試験、トランザクション・キャッシュ、パーミッションチェックなど、全く関連のニーズが存在しないシーンで使用されています。デコレータは、このような問題を解決するのに最適なデザインです。使用デコレータは、我々は同じコードの多くは機能自体に関連していない分離し、それらを再利用し続けることができます。要するに、デコレータの役割は、既存のオブジェクトに機能を追加することです。
ここで私は(張芸京)時折Python関数(機能)で、あなたがそれに書き込む与える関数定義のラインが@functionnameを変更した、とインタプリタは、優先度の、このような修飾を読んだときに@が表示されます内容物を放出@、@直接関数へのパラメータとして、またはバック関数@クラスの次の行を入れ、その後、関数オブジェクトに変更された値を返します。
@パイソンデコレータの役割を理解するには、最初にすることはとてもいくつかのポイントを覚えておきます:
1.装飾記号は「@」とはどういう意味、シンタックスシュガーのですか?それは私が、書き込みに必要なデコレータ構文@従いますが、一般的な構文に合わせて完全に記述するのpythonを必要としていない、と述べました。だから、デコレータ形式@目的を書くためには、シンプルで便利書くことです
2.デコレータの役割は、それがどのようなものですか?これは、単にその意味:オリジナルの装飾的な機能を。それは何を意味するのでしょうか?例えば、関数func(a、b)は、その機能は、違いのBを求めているがあり、私は今ちょうど再び装飾機能の下の関数にしたい、需要があり、その後、完全な追求の間の差の絶対値を取ることはできませんが、パラメータがリッチfuncを機能を飾るために、装飾するように、この時間必要デコレータ機能、例えば飾り= FUNC(FUNC)関数、関数func伝達関数実装し、その後リッチFUNCを完了するために返され、この内FUNC関数とき豊富に関数func。
3.python常識、機能、および、何か他のもののように、オブジェクトです。戻り値が返される関数は、関数内で関数の引数、または関数として渡すことができ、この手段。サンプルコードの検証:
サンプルコード### DEFのfunction_1(A): 印刷( "function_1") DEFのfunction_2(B): 印刷(B(3)。) 印刷( "function_2") @ function_1 @ function_2 DEF FUNCTION_NAME(N-): 印刷(「こんにちは世界、FUNCTION_NAME I AM「) 復帰。5のn + ... ... #python次の関数への入力として、それぞれの関数の結果のトップダウンオーダー可能。 #出力: "" " Hello Worldの、I AM FUNCTION_NAME 8。 function_2の function_1 " ""
私の他の記事:
(コードで)APIのPythonインタフェースを呼び出す方法データを取得するためのPython APIコールインターフェース、
なぜPythonやPythonは高レベルのプログラミング言語であります