Python - AI 助手

Python functools partial() 函式



Python 的`partial()`函式允許我們建立一個新函式,該函式預先定義了來自另一個函式的特定數量的引數。`partial()`函式用於透過減少函式所需的引數數量來指定函式。這透過為特定數量的引數定義常量值來實現。它使程式碼更易於重用,無需指定原始函式。

語法

以下是`partial()`函式的語法。

functools.partial(func, /, *args, **kwargs)

引數

以下是`partial()`函式的引數:

  • `/`: 這表示所有引數都必須按位置指定。
  • `*args`: 這是用於預先設定新函式的位置引數。
  • `**kwargs`: 這是用於預定義新函式的關鍵字引數。

返回值

此函式返回一個新物件,其行為類似於具有指定引數數量的原始函式。

示例 1

在下面的示例中,我們使用`partial()`函式建立一個特定版本來乘以預定義的引數。

from functools import partial
def multiply(n, p):
    return n*p
x = partial(multiply, 3)
print(x(3))

輸出

結果如下所示:

9

示例 2

這裡,`partial()`用於建立一個新函式,該函式根據以下公式計算結果。

from functools import partial
def func(m, n, o, p):
    return m*1 + n*2 + o*3 + p
x = partial(func, 4, 5, 6)
print(x(7))

輸出

程式碼如下所示:

39

示例 3

在下面的示例中,我們使用預定義的x和y值,而add函式只接受一個引數,即變數z。

from functools import *
def add(w, x, y):
    return 1000*w + 100*x + y
add_part = partial(add, y = 3, x = 2)
print(add_part(2))

輸出

輸出結果如下:

2203
python_modules.htm
廣告