黄色网页视频 I 影音先锋日日狠狠久久 I 秋霞午夜毛片 I 秋霞一二三区 I 国产成人片无码视频 I 国产 精品 自在自线 I av免费观看网站 I 日本精品久久久久中文字幕5 I 91看视频 I 看全色黄大色黄女片18 I 精品不卡一区 I 亚洲最新精品 I 欧美 激情 在线 I 人妻少妇精品久久 I 国产99视频精品免费专区 I 欧美影院 I 欧美精品在欧美一区二区少妇 I av大片网站 I 国产精品黄色片 I 888久久 I 狠狠干最新 I 看看黄色一级片 I 黄色精品久久 I 三级av在线 I 69色综合 I 国产日韩欧美91 I 亚洲精品偷拍 I 激情小说亚洲图片 I 久久国产视频精品 I 国产综合精品一区二区三区 I 色婷婷国产 I 最新成人av在线 I 国产私拍精品 I 日韩成人影音 I 日日夜夜天天综合

Python函數(shù)編程——嵌套&匿名&高階函數(shù)

系統(tǒng) 2076 0

Python函數(shù)編程——嵌套&匿名&高階函數(shù)

一、嵌套函數(shù)

函數(shù)里不僅可以寫代碼,還可以嵌套函數(shù):

          
            name = "小猿圈"
def change():
    name = "小猿圈,自學(xué)編程"
    def change2():
        # global name  如果聲明了這句,下面的name改的是最外層的全局變層
        name = "小猿圈,自學(xué)編程不要錢" #這句注釋掉的話,下面name打印的是哪個(gè)值?
        print("第3層打印", name) 
    change2()  # 調(diào)用內(nèi)層函數(shù)
    print("第2層打印", name)
change()
print("最外層打印", name)
          
        

輸出

          
            第3層打印 小猿圈,自學(xué)編程不要錢
第2層打印 小猿圈,自學(xué)編程
最外層打印 小猿圈
          
        

通過上面的例子,我們理解了,每個(gè)函數(shù)里的變量是互相獨(dú)立的,變量的查找順序也是從當(dāng)前層依次往上層找。

問個(gè)哲學(xué)問題,這東西有什么用呢?哈,現(xiàn)在沒用,不解釋,長(zhǎng)大后學(xué)了裝飾器你就知道有啥用了。

二、匿名函數(shù)

匿名函數(shù)就是不需要顯式的指定函數(shù)名

          
            #這段代碼
def calc(x,y):
    return x**y
print(calc(2,5))
#換成匿名函數(shù)
calc = lambda x,y:x**y
print(calc(2,5))
          
        

你也許會(huì)說,用上這個(gè)東西沒感覺有毛方便呀, 。。。。呵呵,如果是這么用,確實(shí)沒毛線改進(jìn),不過匿名函數(shù)主要是和其它函數(shù)搭配使用的呢,如下

          
            res = map(lambda x:x**2,[1,5,7,4,8])
for i in res:
    print(i)
          
        

輸出

          
            1
25
49
16
64
          
        

三、高階函數(shù)

變量可以指向函數(shù),函數(shù)的參數(shù)能接收變量,那么一個(gè)函數(shù)就可以接收另一個(gè)函數(shù)作為參數(shù),這種函數(shù)就稱之為高階函數(shù)。

          
            def get_abs(n):
    if n < 0 :
        n = int(str(n).strip("-"))
    return n
def add(x,y,f):
    return f(x) + f(y)
res = add(3,-6,get_abs)
print(res)
          
        

只需滿足以下任意一個(gè)條件,即是高階函數(shù):

  • 接受一個(gè)或多個(gè)函數(shù)作為輸入。
  • return 返回另外一個(gè)函數(shù)。

更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論