服务器之家

服务器之家 > 正文

python中偏函数partial用法实例分析

时间:2020-07-20 10:49     来源/作者:yupeng

本文实例讲述了python偏函数partial用法。分享给大家供大家参考。具体如下:

函数在执行时,要带上所有必要的参数进行调用。但是,有时参数可以在函数被调用之前提前获知。这种情况下,一个函数有一个或多个参数预先就能用上,以便函数能用更少的参数进行调用。

例如:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
In [9]: from functools import partial
 
In [10]: def add(a,b):
....: return a+b
....:
 
In [11]: add(4,3)
Out[11]: 7
 
In [12]: plus = partial(add,100)
 
In [13]: plus(9)
Out[13]: 109
 
In [14]: plus2 = partial(add,99)
 
In [15]: plus2(9)
Out[15]: 108

其实就是函数调用的时候,有多个参数 参数,但是其中的一个参数已经知道了,我们可以通过这个参数重新绑定一个新的函数,然后去调用这个新函数。

如果有默认参数的话,他们也可以自动对应上,例如:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
In [17]: def add2(a,b,c=2):
....: return a+b+c
....:
 
In [18]: plus3 = partail(add,101)
---------------------------------------------------------------------------
NameError Traceback (most recent call last)
/Users/yupeng/Documents/PhantomJS/<ipython-input-18-d4b7c6a6855d> in <module>()
----> 1 plus3 = partail(add,101)
 
NameError: name 'partail' is not defined
 
In [19]: plus3 = partial(add,101)
 
In [20]: plus3(1)
Out[20]: 102
 
In [21]: plus3 = partial(add2,101)
 
In [22]: plus3 = partial(add2,101) (1)
Out[22]: 104
 
In [23]: plus3(1)
Out[23]: 104
 
In [24]: plus3(1,2)
Out[24]: 104
 
In [25]: plus3(1,3)
Out[25]: 105
 
In [26]: plus3(1,30)
Out[26]: 132

希望本文所述对大家的Python程序设计有所帮助。

标签:

相关文章

热门资讯

2022年最旺的微信头像大全 微信头像2022年最新版图片
2022年最旺的微信头像大全 微信头像2022年最新版图片 2022-01-10
蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整
蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整 2021-08-24
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
暖暖日本高清免费中文 暖暖在线观看免费完整版韩国
暖暖日本高清免费中文 暖暖在线观看免费完整版韩国 2021-05-08
返回顶部