​偏函数(定住函数内部分参数)

2021-03-12 14:50:56 浏览数 (1)

偏函数

感谢小马同学提供封面

现在让我们想想,偏函数再哪里见过.是不是偏导数呢?是的!那它的核心思想是什么,是把变动的量禁止,一个在动.那么基于这样的想法,我们的编程语言也有这样神奇的用法.

partial函数

python里面有个模块叫functools,为了高阶函数提供支持:

代码语言:javascript复制
functools.partial(func[,*args][,**kwargs])

怎么用?

代码语言:javascript复制
def multiply(x,y):
    return x * y

现在我们想返回某个值的双倍:

代码语言:javascript复制
multiply(3,y=2)
6
multiply(4,y=2)
8
multiply(5,y=2)
10

写的有点不爽,因为2是每次都要调用的,我们现在来改进,一个新的函数只要让y=2是默认的值就好了:

代码语言:javascript复制
def double(x,y=2):
    return multiply(x,y)

但是我们可以这样写:

代码语言:javascript复制
from functools import partial

double = partial(multiply,y=2)

所以,简单来说.就是定住一些函数内部的参数

0 人点赞