偏函數(shù)如何在Python項(xiàng)目中使用?很多新手對此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。
創(chuàng)新互聯(lián)建站于2013年開始,先為巴州等服務(wù)建站,巴州等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為巴州企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。1.為什么要使用偏函數(shù)
如果我們定義了一個(gè)函數(shù),比如說將四個(gè)數(shù)相加add(one ,two,three,four),上層有很多函數(shù)需要調(diào)用這個(gè)函數(shù)。在這些調(diào)用中,80%的調(diào)用傳遞的參數(shù)都是one=1,two=20,如果我們每都輸入相同的參數(shù),這樣乏味而且浪費(fèi),固然,我們可以通過默認(rèn)參數(shù)來解決這個(gè)問題;但是如果另外我們也需要參數(shù)是one=2,two=10的情況呢?所以,我們需要一種函數(shù),能夠?qū)⑷我鈹?shù)量的參數(shù)的函數(shù)轉(zhuǎn)化成帶剩余參數(shù)的函數(shù)對象。
2.什么是偏函數(shù)
通過上面,我們大概明白了什么是偏函數(shù):簡單的說,偏函數(shù)就是某一種函數(shù)帶有固定參數(shù)的實(shí)現(xiàn),所以,我們需要:
1)給偏函數(shù)命名
2)傳遞固定參數(shù)
看下面這個(gè)例子:
from operator import add,mul
from functools import partial
add1=partial(add,1)
add(2,4) #6
add(1,2) #3
3.如何使用偏函數(shù)
可能你還沒有感受到偏函數(shù)的巨大威力,這里舉出一個(gè)常見的應(yīng)用場景。在GUI程序中,一個(gè)控件往往有很多參數(shù):大小、長度、較大尺寸、前景色、背景色等;而我們大量用到同種控件,此時(shí),偏函數(shù)就非常有用了。下面給出一個(gè)GUI應(yīng)用的例子和結(jié)果:
root=Tkinter.Tk()
mybutton=partial(Tkinter.Button,root,fg='white',bg='blue')
b1=mybutton(text='Button1')
b2=mybutton(text='Button2')
qb=mybutton(text='QUIT',bg='red',command=root.quit)
b1.pack()
b2.pack()
qb.pack(fill=Tkinter.X,expand=True)
root.title('PAF!')
root.mainloop()
看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進(jìn)一步的了解或閱讀更多相關(guān)文章,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,的支持。