functools.partial()解释
时间: 2023-08-05 13:09:55 浏览: 91
减少可调用对象的参数个数-华为云大数据中台架构分享
`functools.partial()` 是 Python 标准库 `functools` 模块中的一个函数,它可以用来部分应用一个函数的参数,返回一个新的函数。部分应用是指在函数调用时,将一部分参数提前传入函数,然后返回一个新的函数,新的函数可以接收剩余的参数,并且调用时会将之前传入的参数和新传入的参数合并起来。
使用 `functools.partial()` 可以简化函数的调用,也可以方便地创建一个新的函数,该新函数的某些参数已经被设置为默认值。
例如,假设我们有一个函数 `my_func(a, b, c)`,我们想要创建一个新函数 `new_func`,它的第一个参数已经被设置为 `10`,我们可以使用 `functools.partial()` 来实现:
```python
import functools
def my_func(a, b, c):
return a + b + c
new_func = functools.partial(my_func, 10)
result = new_func(20, 30)
print(result) # 输出 60
```
在上面的例子中,我们使用 `functools.partial()` 创建了一个新函数 `new_func`,该函数的第一个参数 `a` 已经被设置为 `10`,当我们调用 `new_func(20, 30)` 时,实际上是调用了 `my_func(10, 20, 30)`,返回结果为 `60`。
阅读全文