python中偏函數(shù)partial用法實例分析
本文實例講述了python中偏函數(shù)partial用法。分享給大家供大家參考。具體如下:
函數(shù)在執(zhí)行時,要帶上所有必要的參數(shù)進行調(diào)用。但是,有時參數(shù)可以在函數(shù)被調(diào)用之前提前獲知。這種情況下,一個函數(shù)有一個或多個參數(shù)預先就能用上,以便函數(shù)能用更少的參數(shù)進行調(diào)用。
例如:
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
其實就是函數(shù)調(diào)用的時候,有多個參數(shù) 參數(shù),但是其中的一個參數(shù)已經(jīng)知道了,我們可以通過這個參數(shù)重新綁定一個新的函數(shù),然后去調(diào)用這個新函數(shù)。
如果有默認參數(shù)的話,他們也可以自動對應上,例如:
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多次調(diào)用exe文件運行不同的結(jié)果
有個C++項目是讀取配置參數(shù)文件并打印對應的結(jié)果,后來需要多次修改配置文件并運行,于是想到寫個python腳本執(zhí)行這一過程,今天通過本文給大家分享python多次調(diào)用exe文件運行不同的結(jié)果,感興趣的朋友一起看看吧2023-05-05Python+matplotlib實現(xiàn)餅圖的繪制
Matplotlib是一個Python的2D繪圖庫,它以各種硬拷貝格式和跨平臺的交互式環(huán)境生成出版質(zhì)量級別的圖形。本文將利用Matplotlib庫繪制餅圖,感興趣的可以了解一下2022-03-03Cpython3.9源碼解析python中的大小整數(shù)
這篇文章主要介紹了Cpython3.9源碼解析python中的大小整數(shù),在CPython中,小整數(shù)對象池是一種優(yōu)化機制,用于減少對常用小整數(shù)的內(nèi)存分配和銷毀開銷,需要的朋友可以參考下2023-04-04pyppeteer執(zhí)行js繞過webdriver監(jiān)測方法下
這篇文章主要為大家介紹了pyppeteer上執(zhí)行js并繞過webdriver監(jiān)測常見方法的上篇,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪2022-04-04

python+Matplotlib?繪制帶置信區(qū)間的折線圖

Python+tkinter使用40行代碼實現(xiàn)計算器功能