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


Posted in Python onJuly 08, 2015

本文实例讲述了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定时器使用示例分享
Feb 16 Python
python根据开头和结尾字符串获取中间字符串的方法
Mar 26 Python
python抓取百度首页的方法
May 19 Python
Python简单遍历字典及删除元素的方法
Sep 18 Python
Python+OpenCV让电脑帮你玩微信跳一跳
Jan 04 Python
深入理解Python 关于supper 的 用法和原理
Feb 28 Python
Python实现删除时保留特定文件夹和文件的示例
Apr 27 Python
python 生成图形验证码的方法示例
Nov 11 Python
Python和Java的语法对比分析语法简洁上python的确完美胜出
May 10 Python
Django集成搜索引擎Elasticserach的方法示例
Jun 04 Python
关于numpy数组轴的使用详解
Dec 05 Python
Pytorch - TORCH.NN.INIT 参数初始化的操作
Feb 27 Python
Python使用bs4获取58同城城市分类的方法
Jul 08 #Python
Python实现批量修改文件名实例
Jul 08 #Python
Python查询阿里巴巴关键字排名的方法
Jul 08 #Python
浅谈Python中的闭包
Jul 08 #Python
Python中atexit模块的基本使用示例
Jul 08 #Python
python登录豆瓣并发帖的方法
Jul 08 #Python
python发送HTTP请求的方法小结
Jul 08 #Python
You might like
php匹配字符中链接地址的方法
2014/12/22 PHP
详解Yii2 定制表单输入字段的标签和样式
2017/01/04 PHP
图片自动更新(说明)
2006/10/02 Javascript
javascript数组去掉重复
2011/05/12 Javascript
jQuery性能优化的38个建议
2014/03/04 Javascript
jquery删除指定的html标签并保留标签内文本内容的方法
2014/04/02 Javascript
javascript属性访问表达式用法分析
2015/04/25 Javascript
轻松学习jQuery插件EasyUI EasyUI实现拖放商品放置购物车
2015/11/30 Javascript
javascript执行环境及作用域详解
2016/05/05 Javascript
功能强大的Bootstrap使用手册(一)
2016/08/02 Javascript
JavaScript算法系列之快速排序(Quicksort)算法实例详解
2016/09/04 Javascript
js实现下一页页码效果
2017/03/07 Javascript
vue.js 使用v-if v-else发现没有执行解决办法
2017/05/15 Javascript
详解Angular4 路由设置相关
2017/08/26 Javascript
vue.js删除列表中的一行
2018/06/30 Javascript
vue interceptor 使用教程实例详解
2018/09/13 Javascript
vue+VeeValidate 校验范围实例详解(部分校验,全部校验)
2018/10/19 Javascript
angular6根据environments配置文件更改开发所需要的环境的方法
2019/03/06 Javascript
[01:39:04]DOTA2-DPC中国联赛 正赛 SAG vs CDEC BO3 第二场 2月1日
2021/03/11 DOTA
python笔记(1) 关于我们应不应该继续学习python
2012/10/24 Python
pandas series序列转化为星期几的实例
2018/04/11 Python
详解python--模拟轮盘抽奖游戏
2019/04/12 Python
python3 enum模块的应用实例详解
2019/08/12 Python
Django 自定义分页器的实现代码
2019/11/24 Python
python字典与json转换的方法总结
2020/12/28 Python
印尼披萨外送专家:Domino’s Pizza印尼
2017/12/28 全球购物
Sephora丝芙兰马来西亚官方网站:国际化妆品购物
2018/03/15 全球购物
ZWILLING双立人法国网上商店:德国刀具锅具厨具品牌
2019/08/28 全球购物
小学教师国培感言
2014/02/08 职场文书
中国好声音广告词
2014/03/18 职场文书
治超工作实施方案
2014/05/04 职场文书
初中升旗仪式演讲稿
2014/05/08 职场文书
会计求职信范文
2014/05/24 职场文书
初中毕业典礼演讲稿
2014/09/09 职场文书
Go并发4种方法简明讲解
2022/04/06 Golang
springboot 全局异常处理和统一响应对象的处理方式
2022/06/28 Java/Android