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

 更新时间:2015年07月08日 12:24:39   作者:yupeng  
这篇文章主要介绍了python中偏函数partial用法,实例分析了偏函数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程序设计有所帮助。

相关文章

  • pytorch之torchvision.transforms图像变换实例

    pytorch之torchvision.transforms图像变换实例

    今天小编就为大家分享一篇pytorch之torchvision.transforms图像变换实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-12-12
  • Python实战之疫苗研发情况可视化

    Python实战之疫苗研发情况可视化

    2020年底以来,欧美,印度,中国,俄罗斯等多国得制药公司纷纷推出了针对新冠/肺炎的疫苗,这部分主要分析了2020年以来全球疫情形势,各类疫苗在全球的地理分布,疫苗在各国的接种进度进行可视化展示,需要的朋友可以参考下
    2021-05-05
  • python教程十行代码教你语音转文字QQ微信聊天

    python教程十行代码教你语音转文字QQ微信聊天

    QQ上面发的语音消息是可以直接文字识别的,但是微信为什么没有呢?是因为技术太难实现吗?这个很简单啊!今天给大家介绍一下语音转文字的原理
    2021-09-09
  • python实现随机梯度下降法

    python实现随机梯度下降法

    这篇文章主要为大家详细介绍了python实现随机梯度下降法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-08-08
  • 解决Python传递中文参数的问题

    解决Python传递中文参数的问题

    这篇文章主要介绍了解决Python传递中文参数的问题的相关资料,需要的朋友可以参考下
    2015-08-08
  • python性能测试工具locust的使用

    python性能测试工具locust的使用

    这篇文章主要介绍了python性能测试工具locust的使用,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下
    2020-12-12
  • Python执行流程控制详情

    Python执行流程控制详情

    这篇文章主要介绍了Python执行流程控制,流程控制即控制流程,具体指控制程序的执行流程,而程序的执行流程分为三种结构:顺序结构、分支结构、循环结构,下文详细介绍需要的小伙伴可以参考一下
    2022-04-04
  • Python使用xlrd模块实现操作Excel读写的方法汇总

    Python使用xlrd模块实现操作Excel读写的方法汇总

    本文介绍Python中使用xlrd、xlwt、xlutils模块操作Excel文件的方法,xlrd用于读取Excel文件,但2.0.0版本后不支持.xlsx格式,xlwt用于创建和写入Excel文件,而xlutils主要用于复制和处理Excel文件,详细介绍了如何打开文件、获取工作表信息、操作行列数据和处理日期格式数据
    2024-10-10
  • 如何把外网python虚拟环境迁移到内网

    如何把外网python虚拟环境迁移到内网

    这篇文章主要介绍了如何把外网python虚拟环境迁移到内网,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-05-05
  • python网络爬虫 Scrapy中selenium用法详解

    python网络爬虫 Scrapy中selenium用法详解

    这篇文章主要介绍了python网络爬虫 Scrapy中selenium用法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值
    2019-09-09

最新评论