Python の部分関数

部分関数を使用すると、関数の特定の数の引数を固定し、新しい関数を生成できます。この記事では、さまざまな例を使用して部分関数の概念を理解しようとします。 パイソン

Python での部分関数と部分関数の使用とは何ですか?

Python の部分関数とは、別の関数の引数を一定数固定して作成される関数です。 Python には、と呼ばれる組み込みモジュールが用意されています。 関数ツール これには、部分関数を作成するために使用できる、partial と呼ばれる関数が含まれています。の partial function は、呼び出し可能な関数 (通常は別の関数) と、新しい部分関数に事前に入力される一連の引数を受け取ります。この機能は次のようなものです C++ でバインドする

Python で部分関数を実装するにはどうすればよいですか?

部分関数は、固定引数として使用される位置引数とキーワード引数の両方をサポートしています。

例1

この例では、デフォルト値を使用して部分関数を実装します。デフォルト値は、変数の置換を左から開始します。この例では、関数に a b と c の定数値を事前に入力しています。そして g() は 1 つの引数、つまり変数 x を取るだけです。

Python
   from   functools   import   partial   # A normal function   def   f  (  a     b     c     x  ):   return   1000  *  a   +   100  *  b   +   10  *  c   +   x   # A partial function that calls f with   # a as 3 b as 1 and c as 4.   g   =   partial  (  f     3     1     4  )   # Calling g()   print  (  g  (  5  ))   

出力:

 3145  

例 2

この例では、c と b の値を割り当てた定義済みの定数値を使用し、add_part() は単一の引数、つまり変数 a を受け取ります。

Python
   from   functools   import   *   # A normal function   def   add  (  a     b     c  ):   return   100   *   a   +   10   *   b   +   c   # A partial function with b = 1 and c = 2   add_part   =   partial  (  add     c   =   2     b   =   1  )   # Calling partial function   print  (  add_part  (  3  ))   

出力:

 312  

部分関数の使用

  • ライブラリとの統合: 部分関数を使用すると、部分引数を指定することでサードパーティの関数またはメソッドの動作をカスタマイズしたり、他のライブラリと統合したりできます。
  • コールバックの簡素化: 部分関数を使用すると、コールバック固有のパラメーターを修正し、コードの残りの部分にクリーンなインターフェイスを提供することで、特殊なコールバック ハンドラーを作成できます。
  • パラメータの固定: : 部分関数は、複数のパラメーターを持つ関数があり、一部のパラメーターを固定してそれを頻繁に使用したい場合に非常に役立ちます。これらの固定パラメータを繰り返し渡す代わりに、部分関数を作成し、残りの引数を使用してそれを呼び出すことができます。
  • 重複の削減: さまざまな場所で関数に同じ引数を使用している場合、それらの固定引数を使用して部分関数を作成すると、コードの重複とメンテナンスの労力を軽減できます。
  • デフォルトの引数: Pythonの組み込み functools.partial 関数の引数のデフォルト値を設定するために使用できます。
  • コードの再利用性: 部分関数を使用すると、一般的な関数から特殊な関数を派生できるため、コードの再利用に役立ちます。



あなたにおすすめ