深入了解python高階函數(shù)編寫與使用
何為高階函數(shù),以實(shí)際代碼為例子一步步深入概念。
1.變量可以指向函數(shù)
以abs()為例:
>>>abs(-10) 10
但是只寫abs呢?
>>>abs <built-in function abs>
abs(-10)是調(diào)用函數(shù)而abs是函數(shù)本身?。
把函數(shù)本身賦給變量呢?
>>>f=abs >>>f <built-in function abs>
結(jié)果顯然易見變量可以指向函數(shù)。
也可調(diào)用如:
>>>f=abs >>>f(-10) 10
說(shuō)明f已經(jīng)指向abs函數(shù)本身,f()與abs()完全相同。
2.函數(shù)名也可以是變量。
可以完全把函數(shù)名abs看成變量,它指向絕對(duì)值函數(shù)。
但要指向其他對(duì)象呢?
>>>abs=10 >>>abs(-10) Tranceback(most recent call last): File"<stdin>",line1,in <module> TypeError:'int'object is not callable
此時(shí)abs為10,就無(wú)法通過abs(-10)來(lái)調(diào)用函數(shù)了。
3.傳入函數(shù)
既然指向函數(shù)就可傳入?yún)?shù)。
>>>print(abs(-10)) 10 >>>f=abs >>>def add(x,y,f): ... x=-5 ... y=6 ... return f(x)+f(y) ... 11
?高階函數(shù)就是可以接收到別的函數(shù)和其參數(shù)。
總結(jié)
本篇文章就到這里了,希望能夠給你帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
python中的os.mkdir和os.makedirs的使用區(qū)別及如何查看某個(gè)模塊中的某些字母開頭的屬性方法
這篇文章主要介紹了python中的os.mkdir和os.makedirs的使用區(qū)別及如何查看某個(gè)模塊中的某些字母開頭的屬性方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-03-03
在Python中使用Mako模版庫(kù)的簡(jiǎn)單教程
這篇文章主要介紹了在Python中使用Mako模版庫(kù)的簡(jiǎn)單教程,包括在Django或者Tornado框架中集成Mako的方法,需要的朋友可以參考下2015-04-04
使用keras實(shí)現(xiàn)BiLSTM+CNN+CRF文字標(biāo)記NER
這篇文章主要介紹了使用keras實(shí)現(xiàn)BiLSTM+CNN+CRF文字標(biāo)記NER,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來(lái)看看吧2020-06-06
python實(shí)現(xiàn)巡檢系統(tǒng)(solaris)示例
這篇文章主要介紹了python實(shí)現(xiàn)巡檢系統(tǒng)(solaris)示例,需要的朋友可以參考下2014-04-04
集成開發(fā)環(huán)境Pycharm的安裝及模板設(shè)置圖文教程
PyCharm是一種Python的集成開發(fā)環(huán)境,帶有一整套可以幫助用戶在使用Python語(yǔ)言開發(fā)時(shí)提高效率的工具,這篇文章主要介紹了集成開發(fā)環(huán)境Pycharm的安裝及模板設(shè)置,需要的朋友可以參考下2022-07-07
pygame庫(kù)實(shí)現(xiàn)俄羅斯方塊小游戲
這篇文章主要為大家詳細(xì)介紹了pygame庫(kù)實(shí)現(xiàn)俄羅斯方塊小游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-10-10

