python返回函數(shù)有什么作用?
本文教程操作環(huán)境:windows7系統(tǒng)、Python3.9.1,DELLG3電腦。
1、可以看到函數(shù)log它最終的返回值是一個(gè)函數(shù)wrapper。在python中,返回函數(shù)指:對(duì)于一個(gè)函數(shù)c,它最后的返回值是一個(gè)函數(shù)d,那么函數(shù)c就是一個(gè)返回函數(shù)。返回函數(shù)的好處就是當(dāng)調(diào)用c函數(shù)時(shí)不用立即執(zhí)行c中的所有邏輯,我們可以看下面的例子:
deflazy_sum(*args):
defsum():
ax=0
forninargs:
ax=ax+n
returnax
returnsum
2、函數(shù)lazy_sum實(shí)現(xiàn)了一個(gè)求和的功能,當(dāng)我們調(diào)用lazy_sum時(shí),其返回的不是直接的求和值,而是一個(gè)函數(shù)sum,
>>>f=lazy_sum(1,3,5,7,9)
>>>f
.sumat0x101c6ed90>
3、這里f變量其實(shí)就是sum函數(shù),所以要求和的值時(shí),調(diào)用f才可以。
>>>f()
25
“當(dāng)有一個(gè)函數(shù)h,它定義了內(nèi)部函數(shù)g,最后返回了函數(shù)g,并且在該過(guò)程中g(shù)還使用了h函數(shù)的局部變量,那么這種程序python中稱之為閉包”。根據(jù)閉包定義,其實(shí)它也是一種返回函數(shù),只不過(guò)它的內(nèi)部函數(shù)使用了外部函數(shù)的局部變量(入?yún)?。
以上就是python返回函數(shù)的作用,希望能對(duì)大家有所幫助。更多Python學(xué)習(xí)教程請(qǐng)關(guān)注IT培訓(xùn)機(jī)構(gòu):千鋒教育。