python-偏函数(65)

#转自https://www.jianshu.com/c/00c61372c46a网址
#偏函数可以理解为,将现有函数的某些参数固定下来,构造成一个新函数。新函数调用就不用写那么多参数了。

from functools import partial

def foo(a, b, c, d, f):
    return a + b + c + d + f

if __name__ == '__main__':
    print(foo(10, 20, 30, 40, 5))
    print(foo(10, 20, 30, 40, 25))
    print(foo(10, 20, 30, 40, 69))
    print(foo(10, 20, 30, 40, 32))
    add = partial(foo, a=10, b=20, c=30, d=40)
    print(add(f=5))  # foo(10, 20, 30, 40, 5)
    print(add(f=8))  # foo(10, 20, 30, 40, 8)






#偏函数应用:简单的图形窗口
import tkinter
from functools import partial

root = tkinter.Tk()
lb = tkinter.Label(text="Hello world!")
b1 = tkinter.Button(root, fg='white', bg='blue', text='Button 1')  # 不使用偏函数生成按钮
MyBtn = partial(tkinter.Button, root, fg='white', bg='blue')  # 使用偏函数定义MyBtn
b2 = MyBtn(text='Button 2')
b3 = MyBtn(text='quit', command=root.quit)
lb.pack()
b1.pack()
b2.pack()
b3.pack()
root.mainloop()
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值