Python学习笔记__4.5章 偏函数(绑定函数参数)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python学习笔记__4.5章 偏函数(绑定函数参数)相关的知识,希望对你有一定的参考价值。

# 这是学习廖雪峰老师python教程的学习笔记

1、概览

偏函数(Partial function)是functools模块的一个功能

functools.partial的作用就是,在一个已存在的函数基础上。把它的某些参数给固定住(也就是设置默认值),然后返回一个新的函数,调用这个新函数会更简单

 

1.1、functools. partial 应用

已知:

int 函数可以将 ‘123’ ——》 123.

int 的 base 参数可以做 N 进制的转换

>>> int('12345', base=8)
5349
>>>
int('12345', 16)
74565

使用:

#  partial 定义一个 固定2进制转换的函数

int2 = functools.partial(int, base=2)  # 定义过后,我们依然可以用其他值替换 base值,就像默认参数一样

解析:

创建偏函数时,实际上可以接收函数对象、*args和**kw这3个参数。

当传入:

int2 = functools.partial(int, base=2)

相当于:

kw = { 'base': 2 }    #  固定了一个关键字参数

int('10010', **kw)

当传入:

max2 = functools.partial(max, 10)  # 将10作为 *args 的一部分,自动加到了右边

相当于:

args = (10, 5, 6, 7)

max(*args)

补充:

对于像pow() 参数 ,range()参数,有多个参数的情况下。

p=functools.partial(pow,2),会固定第一个参数


以上是关于Python学习笔记__4.5章 偏函数(绑定函数参数)的主要内容,如果未能解决你的问题,请参考以下文章

Python学习笔记__2.1章 调用函数

Python学习笔记__2.4章 递归函数

Python学习笔记__2.2章 定义函数

Python学习笔记__4.2章 返回函数

Python学习笔记__4.1章 高阶函数

Python学习笔记__4.3章 匿名函数(简洁函数)