這篇文章與你一起去探尋Python中的filter函數(shù),使你以有限的時(shí)間搞清楚這一函數(shù)的基本原理。也可以通過(guò)碎片化時(shí)長(zhǎng)夯實(shí)這一函數(shù)公式,使你在解決操作過(guò)程中更有效
什么事情都是通過(guò)量變引起質(zhì)變的一個(gè)過(guò)程,學(xué)習(xí)培訓(xùn)Python也是如此。只有將1個(gè)語(yǔ)言表達(dá)里的常用函數(shù)了然于胸了,才可以在處理事情的過(guò)程當(dāng)中游刃有余,迅速地尋找最佳方案。
一、filter函數(shù)的概念
filter函數(shù)是Python常用的內(nèi)置函數(shù),啟用不用載入庫(kù),直接用就可以。它主要是用于依據(jù)特殊條件過(guò)慮迭代器中不符合要求的原素,回到1個(gè)可塑性測(cè)算的filter目標(biāo)或迭代器。必須用list函數(shù)開(kāi)展變換,才能獲得合乎的前提條件物質(zhì)組成的目錄。
其基本上啟用詞法如下所示:
filter(functionorNone,iterable)
function:函數(shù)公式,作用是對(duì)iterable中的每一個(gè)原素確定是否合乎特殊條件。
None:不啟用一切函數(shù)公式,僅對(duì)可迭代對(duì)象中元素自身分辨真?zhèn)?,保存為真得原素?/p>
iterables:可迭代對(duì)象(編碼序列、詞典等)。
二、filter函數(shù)案例
求一個(gè)編碼序列中小于零的物質(zhì)組成的編碼序列
我們首先來(lái)看一下filter函數(shù)不加list的結(jié)論,編碼如下所示:
c=[-10,28,9,-5,30,5] filter(lambdaa:a>0,c)
獲得結(jié)論:
回到1個(gè)可塑性測(cè)算的filter目標(biāo)或迭代器。接下來(lái)看下用list函數(shù)開(kāi)展變換會(huì)得到什么,編碼如下所示:
c=[-10,28,9,-5,30,5] list(filter(lambdaa:a>0,c))
獲得結(jié)論:
[28,9,30,5]
從結(jié)論知,filter函數(shù)作用是篩出了編碼序列c中高于0的物質(zhì)組成了新對(duì)象或迭代器。根據(jù)list函數(shù)開(kāi)展變換,從而獲得對(duì)符合條件的物質(zhì)組成的目錄。假如有小伙伴對(duì)編碼中的lambda函數(shù)公式不太熟悉,可以參考一下【Python常用函數(shù)】這篇文章使你完全把握Python中的lambda函數(shù)公式。
求編碼序列中非零數(shù)所組成的新編碼序列
在filter函數(shù)界定中指出,filter函數(shù)中主要參數(shù)None表示不啟用一切函數(shù)公式,僅對(duì)可迭代對(duì)象中元素自身分辨真?zhèn)?,保存為真得原素?/p>
數(shù)據(jù)測(cè)試如下所示:
#找到編碼序列中的非0數(shù) c2=[4,9,0,-5,-8,7,0] list(filter(None,c2)) 獲得結(jié)論: [4,9,-5,-8,7]
因?yàn)?在Python中默認(rèn)False,非0默認(rèn)True,因此在挑選的時(shí)候?qū)?展開(kāi)了過(guò)慮。
求詞典中高于2的鍵所組成的新編碼序列
在filter函數(shù)界定中指出,它對(duì)于可迭代對(duì)象予以處理,因此涵蓋了目錄和詞典等目標(biāo)。第四個(gè)練習(xí)題都會(huì)對(duì)目錄予以處理,本例看對(duì)詞典的處理方法。編碼如下所示:
#找到詞典中高于2的鍵 list(filter(lambdax:x>2,{1:'唐嫣',2:'朱雨玲',3:'樊振東',4:'孫建',5:'劉文'}))
獲得結(jié)論:
[3,4,5]
從結(jié)論知,filter函數(shù)對(duì)詞典予以處理的過(guò)程中,挑選對(duì)象是詞典的鍵,而非詞典數(shù)值。
求100之內(nèi)不單單是3的倍率又奇數(shù)的整數(shù)
最終再來(lái)看1個(gè)中小學(xué)經(jīng)常遇到的題,求100之內(nèi)不單單是3的倍率又奇數(shù)的整數(shù)。編碼如下所示:
#求100之內(nèi)既奇數(shù)又是3的倍率的整數(shù) importnumpyasnp list(filter(lambdax:x%2!=0andx%3==0,np.arange(1,101)))
獲得結(jié)論:
[3,9,15,21,27,33,39,45,51,57,63,69,75,81,87,93,99]
其中np.arange(1,101))表示1到100公差為1的等差數(shù)列。
x%2!=0表示該數(shù)不能整除2,即為奇數(shù)。
x%3==0表示該數(shù)能整除3,即為3的倍率。
可以人工復(fù)核一下,發(fā)現(xiàn)Python得到的結(jié)果是正確的。
綜上所述,這篇文章就給大家介紹到這里了,希望可以給大家?guī)?lái)幫助。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/128842.html
文中與你一起去探尋Python中的filter函數(shù),使你以有限的時(shí)間搞清楚這一函數(shù)的基本原理。也可以通過(guò)碎片化時(shí)長(zhǎng)夯實(shí)這一函數(shù)公式,使你在解決操作過(guò)程中更有效 什么事情都是通過(guò)量變引起質(zhì)變的一個(gè)過(guò)程,學(xué)習(xí)培訓(xùn)Python也是如此。只有將1個(gè)語(yǔ)言表達(dá)里的常用函數(shù)了然于胸了,才可以在處理事情的過(guò)程當(dāng)中游刃有余,迅速地尋找最佳方案。 一、filter函數(shù)的概念 filter函數(shù)是Python常...
摘要:下面代碼會(huì)存在什么問(wèn)題,如何改進(jìn)一行代碼輸出之間的所有偶數(shù)。簡(jiǎn)述進(jìn)程之間如何通信多路復(fù)用的作用模型的區(qū)別什么是并發(fā)和并行解釋什么是異步非阻塞的作用面試題說(shuō)說(shuō)你知道的命令如何查看某次提交修改的內(nèi)容答案掃碼下面的二維碼訂閱即可獲取。 引言 最近在刷面試題,所以需要看大量的 Python 相關(guān)的面試題,從大量的題目中總結(jié)了很多的知識(shí),同時(shí)也對(duì)一些題目進(jìn)行拓展了,但是在看了網(wǎng)上的大部分面試題不...
摘要:最近開(kāi)始看源碼,并將源碼解讀放在了我的計(jì)劃中。將轉(zhuǎn)為數(shù)組同時(shí)去掉第一個(gè)元素之后便可以調(diào)用方法總結(jié)數(shù)組的擴(kuò)展方法就解讀到這里了,相關(guān)源碼可以參考這部分。放個(gè)預(yù)告,下一篇會(huì)暫緩下,講下相關(guān)的東西,敬請(qǐng)期待。 Why underscore 最近開(kāi)始看 underscore.js 源碼,并將 underscore.js 源碼解讀 放在了我的 2016 計(jì)劃中。 閱讀一些著名框架類庫(kù)的源碼,就好...
摘要:另外,這些中的每一個(gè)都是純函數(shù),有返回值。例如,如果要計(jì)算整數(shù)列表的累積乘,或者求和等等基礎(chǔ)語(yǔ)法參數(shù)是連續(xù)作用于每一個(gè)元素的方法,新的參數(shù)為上一次執(zhí)行的結(jié)果,為被過(guò)濾的可迭代序列返回值最終的返回結(jié)果在中,是一個(gè)內(nèi)置函數(shù)。 簡(jiǎn)潔的內(nèi)置函數(shù) 大家好,我又回來(lái)了,今天我想和大家分享的是Python非常重要的幾個(gè)內(nèi)置函數(shù):map,filter,reduce, zip。它們都是處理序列的便捷函數(shù)...
摘要:大數(shù)據(jù)人工智能分析技術(shù)使得醫(yī)學(xué)影像診斷軟硬件變得更智能化。通過(guò)已訓(xùn)練好的卷積神經(jīng)網(wǎng)絡(luò),能很快地搭建并訓(xùn)練自己的深度學(xué)習(xí)系統(tǒng)。目前,典型的卷積神經(jīng)網(wǎng)絡(luò)是一個(gè)多層的可訓(xùn)練的體系結(jié)構(gòu)。使用平均值操作的池化層被稱之為平均池化層。 來(lái)自 GitChat 作者:王曉明更多IT技術(shù)分享,盡在微信公眾號(hào):GitChat技術(shù)雜談 進(jìn)入 GitChat 閱讀原文 前言 醫(yī)學(xué)影像與人工智能的結(jié)合,是數(shù)字醫(yī)療...
閱讀 928·2023-01-14 11:38
閱讀 902·2023-01-14 11:04
閱讀 759·2023-01-14 10:48
閱讀 2065·2023-01-14 10:34
閱讀 968·2023-01-14 10:24
閱讀 844·2023-01-14 10:18
閱讀 512·2023-01-14 10:09
閱讀 591·2023-01-14 10:02