python 偏函数应用
来源:互联网 发布:黑马程序员的简历 编辑:程序博客网 时间:2024/05/16 12:51
摘要:python的设计核心原则就是简洁——在这种原则的指导下,诞生了lambda表达式和偏函数:二者都让函数调用变得简洁。本文主要为你介绍偏函数的应用。
1.为什么要使用偏函数
如果我们定义了一个函数,比如说将四个数相加add(one ,two,three,four),上层有很多函数需要调用这个函数。在这些调用中,80%的调用传递的参数都是one=1,two=20,如果我们每都输入相同的参数,这样乏味而且浪费,固然,我们可以通过默认参数来解决这个问题;但是如果另外我们也需要参数是one=2,two=10的情况呢?所以,我们需要一种函数,能够将任意数量的参数的函数转化成带剩余参数的函数对象。
2.什么是偏函数
通过上面,我们大概明白了什么是偏函数:简单的说,偏函数就是某一种函数带有固定参数的实现,所以,我们需要:1)给偏函数命名 2)传递固定参数
看下面这个例子:
>>> from operator import add,mul
>>> from functools import partial
>>> add1=partial(add,1)
>>> add(2,4)
6
>>> add(1,2)
3
3.如何使用偏函数
可能你还没有感受到偏函数的巨大威力,这里举出一个常见的应用场景。在GUI程序中,一个控件往往有很多参数:大小、长度、最大尺寸、前景色、背景色等;而我们大量用到同种控件,此时,偏函数就非常有用了。下面给出一个GUI应用的例子和结果:
1 #!/usr/bin/python 2 from functools import partial 3 import Tkinter 4 root=Tkinter.Tk() 5 mybutton=partial(Tkinter.Button,root,fg='white',bg='blue') 6 b1=mybutton(text='Button1') 7 b2=mybutton(text='Button2') 8 qb=mybutton(text='QUIT',bg='red',command=root.quit) 9 b1.pack() 10 b2.pack() 11 qb.pack(fill=Tkinter.X,expand=True) 12 root.title('PAF!') 13 root.mainloop()
0 0
- python 偏函数应用
- [Python]偏函数应用
- python偏函数应用
- Python偏函数应用
- python的偏函数应用partial
- python pickle函数应用
- Python之函数应用
- python strip()函数的应用
- python函数应用(1)
- python函数应用(2)
- Python学习24:偏函数应用(partial)
- python核心编程-GUI程序之偏函数应用
- 2.Python进阶-Python语句结构+Python函数应用
- Python基本语法_函数属性 & 参数类型 & 偏函数的应用
- Python基本语法_函数属性 & 参数类型 & 偏函数的应用
- 关于python中help函数的应用
- python中的 range() 函数参数解释应用
- 初学python------re模块函数应用
- es ps ts
- 第三周作业——冒泡排序和归并排序
- Android列表控件整理
- xcode5 ios7 64位 iphone5s引用第三方库报错的解决办法
- 设计模式学习总结(5) 原型模式
- python 偏函数应用
- 查找数据库中数据表。。。
- SVN利用钩子中的post-commit同步版本库到网站目录
- 重新开始战斗10-编程之美-寻找发帖水王
- 当官的
- Hibernate 多对多关联关系 中间表有多个字段如何配置
- 字符串首字母置为大写
- 施工方等会改
- 改善C#编程的50个建议(11-15)