• <tfoot id="ukgsw"><input id="ukgsw"></input></tfoot>
    
    • 久久精品精选,精品九九视频,www久久只有这里有精品,亚洲熟女乱色综合一区
      分享

      Python 內(nèi)置函數(shù)與匿名函數(shù)

       禁忌石 2022-03-16

      內(nèi)置函數(shù)-----filter和map

      • filter
      • filter()函數(shù)接收一個(gè)函數(shù) f 和一個(gè)list,這個(gè)函數(shù) f 的作用是對(duì)每個(gè)元素進(jìn)行判斷,返回 True或 False,filter()根據(jù)判斷結(jié)果自動(dòng)過(guò)濾掉不符合條件的元素,返回由符合條件元素組成的新list。

      例如,要從一個(gè)list [1, 4, 6, 7, 9, 12, 17]中刪除奇數(shù),保留奇數(shù),首先,要編寫一個(gè)判斷奇數(shù)的函數(shù)

      def add(x):

      return x % 2 == 1

      然后,利用filter()過(guò)濾掉偶數(shù)

      a = filter(add, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10])

      filter()過(guò)濾掉偶數(shù)后的結(jié)果

      print(list(a))

      #[1, 3, 5, 7, 9]

      利用filter(),可以完成很多有用的功能,例如,刪除 None 或者空字符串

      def is_not_empty(s):

      return s and len(s.strip()) > 0

      r = filter(is_not_empty,['sts', None, ' '])

      print(list(r))

      注意: s.strip(rm) 刪除 s 字符串中開(kāi)頭、結(jié)尾處的 rm 序列的字符。

      當(dāng)rm為空時(shí),默認(rèn)刪除空白符(包括'\n', '\r', '\t', ' '),如下:

      a = '123 '

      print(a.strip())

      a = '\t\t\n123\t\t\n\n'

      print(a.strip())

      請(qǐng)利用filter()過(guò)濾出1~100中平方根是整數(shù)的數(shù),即結(jié)果應(yīng)該是:

      [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

      import math # 導(dǎo)入數(shù)學(xué)常量

      def is_sqr(x):

      return math.sqrt(x) % 1 == 0 # .sqrt為開(kāi)根號(hào)

      s = filter(is_sqr, range(1, 101))

      print(list(s))

      • map
      • Python中的map函數(shù)應(yīng)用于每一個(gè)可迭代的項(xiàng),返回的是一個(gè)結(jié)果list。如果有其他的可迭代參數(shù)傳進(jìn)來(lái),map函數(shù)則會(huì)把每一個(gè)參數(shù)都以相應(yīng)的處理函數(shù)進(jìn)行迭代處理。map()函數(shù)接收兩個(gè)參數(shù),一個(gè)是函數(shù),一個(gè)是序列,map將傳入的函數(shù)依次作用到序列的每個(gè)元素,并把結(jié)果作為新的list返回。

      有一個(gè)list, L = [1,2,3,4,5,6,7,8],我們要將f(x)=x^2作用于這個(gè)list上,那么我們可以使用map函數(shù)處理。

      L = [1,2,3,4,5]

      def is_square(x):

      return x * x

      s = map(is_square,L)

      print(list(s))

      • sorted

      對(duì)List、Dict進(jìn)行排序,Python提供了兩個(gè)方法 對(duì)給定的List L進(jìn)行排序, 方法1.用List的成員函數(shù)sort進(jìn)行排序,在本地進(jìn)行排序,不返回副本 方法2.用built-in函數(shù)sorted進(jìn)行排序(從2.4開(kāi)始),返回副本,原始輸入不變

      --------------------------------sorted---------------------------------------

      sorted(iterable, key=None, reverse=False)

      Return a new list containing all items from the iterable in ascending order.

      A custom key function can be supplied to customise the sort order, and the

      reverse flag can be set to request the result in descending order.

      -----------------------------------------------------------------------------

      參數(shù)說(shuō)明: iterable:是可迭代類型;

      key:傳入一個(gè)函數(shù)名函數(shù)的參數(shù)是可迭代類型中的每一項(xiàng),根據(jù)函數(shù)的返回值大小排序; reverse:排序規(guī)則. reverse = True 降序 或者 reverse = False 升序,有默認(rèn)值。

      返回值:有序列表

      例子

      • 列表按照其中每一個(gè)值的絕對(duì)值排序

      l1 = [-1,2,-2,-4,0,1,3,5,7]

      l2 = sorted(l1,key=abs)

      print(l1)

      print(l2)

      • 列表按照每一個(gè)元素的len排序

      l = ['1','2',[1,2,3],'sssssss']

      l2 = sorted(l,key=len)

      print(l2)

      匿名函數(shù)

      • 匿名函數(shù):為了解決那些功能很簡(jiǎn)單的需求而設(shè)計(jì)的一句話函數(shù)
      文章圖片1

      匿名函數(shù)格式

      函數(shù)名 = lambda 參數(shù) :返回值

      #參數(shù)可以有多個(gè),用逗號(hào)隔開(kāi)

      #匿名函數(shù)不管邏輯多復(fù)雜,只能寫一行,且邏輯執(zhí)行結(jié)束后的內(nèi)容就是返回值

      #返回值和正常的函數(shù)一樣可以是任意數(shù)據(jù)類型

      請(qǐng)把以下函數(shù)變成匿名函數(shù)

      def add(x,y):

      return x+y

      結(jié)果

      kkk = lambda x, y: x+y

      上面是匿名函數(shù)的函數(shù)用法。除此之外,匿名函數(shù)也不是浪得虛名,它真的可以匿名。在和其他功能函數(shù)合作的時(shí)候

      l=[3,2,100,999,213,1111,31121,333]

      print(max(l))

      dic={'k1':10,'k2':100,'k3':30}

      print(max(dic))

      print(dic[max(dic,key=lambda k:dic[k])])

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

      for i in res:

      print(i)

      # 輸出

      # 1

      # 25

      # 49

      # 16

      # 64

      res = filter(lambda x:x>10,[5,8,11,9,15])

      for i in res:

      print(i)

      # 輸出

      # 11

      # 15

        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶 評(píng)論公約

        類似文章 更多

        主站蜘蛛池模板: 中国女人熟毛茸茸A毛片| 成人免费视频在线观看播放| 人妻少妇456在线视频| 亚洲精品午夜国产VA久久成人| 亚洲小说乱欧美另类| 中文亚洲成A人片在线观看| 夜夜爽一区二区三区精品| 亚洲高清成人av在线| 日韩在线看片免费观看软件 | 久久精品这里热有精品| 欧美国产日韩A在线观看| 丁香五月婷激情综合第九色| 亚洲欧美日韩精品久久亚洲区| 在线一区二区中文字幕| 国产精品福利自产拍在线观看| 中文字幕国产原创国产| 免费无码成人AV片在线在线播放| 深夜福利资源在线观看| 人妻在线无码一区二区三区 | 国产另类ts人妖一区二区| 午夜性色一区二区三区不卡视频| 色综合久久久无码中文字幕| 九九电影网午夜理论片| av中文字幕在线二区| 国产欧美久久一区二区三区| 国产成人一区二区三区免费| 亚欧AV无码乱码在线观看性色| 国产美女自卫慰黄网站| av色国产色拍| 久久精品国产免费观看三人同眠| 青青国产揄拍视频| 草草浮力影院| 人人妻人人澡人人爽欧美一区| 玩弄漂亮少妇高潮白浆| 亚洲日韩精品无码一区二区三区| 日日摸夜夜添狠狠添欧美| 偷拍精品一区二区三区| 国产精品IGAO视频网网址| 久久精品国产亚洲不AV麻豆| 不卡乱辈伦在线看中文字幕| 国产首页一区二区不卡|