python中偏函数partial用法实例分析_python教程-查字典教程网
python中偏函数partial用法实例分析
python中偏函数partial用法实例分析
发布时间:2016-12-28 来源:查字典编辑
摘要:本文实例讲述了python中偏函数partial用法。分享给大家供大家参考。具体如下:函数在执行时,要带上所有必要的参数进行调用。但是,有时...

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

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

例如:

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

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

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

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程序设计有所帮助。

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新python学习
    热门python学习
    脚本专栏子分类