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
广告