Python中的filter()函數(shù)的用法
Python內(nèi)建的filter()函數(shù)用于過濾序列。
和map()類似,filter()也接收一個(gè)函數(shù)和一個(gè)序列。和map()不同的時(shí),filter()把傳入的函數(shù)依次作用于每個(gè)元素,然后根據(jù)返回值是True還是False決定保留還是丟棄該元素。
例如,在一個(gè)list中,刪掉偶數(shù),只保留奇數(shù),可以這么寫:
def is_odd(n): return n % 2 == 1 filter(is_odd, [1, 2, 4, 5, 6, 9, 10, 15]) # 結(jié)果: [1, 5, 9, 15]
把一個(gè)序列中的空字符串刪掉,可以這么寫:
def not_empty(s): return s and s.strip() filter(not_empty, ['A', '', 'B', None, 'C', ' ']) # 結(jié)果: ['A', 'B', 'C']
可見用filter()這個(gè)高階函數(shù),關(guān)鍵在于正確實(shí)現(xiàn)一個(gè)“篩選”函數(shù)。
練習(xí)
請嘗試用filter()刪除1~100的素?cái)?shù)。
相關(guān)文章
python django使用haystack:全文檢索的框架(實(shí)例講解)
下面小編就為大家?guī)硪黄猵ython django使用haystack:全文檢索的框架(實(shí)例講解)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-09-09pycharm配置anaconda環(huán)境時(shí)找不到python.exe的兩種解決辦法
如果你在Anaconda中創(chuàng)建了虛擬環(huán)境,但是無法找到python.exe,可能是因?yàn)樘摂M環(huán)境的Python路徑?jīng)]有添加到系統(tǒng)環(huán)境變量中,這篇文章主要給大家介紹了關(guān)于pycharm配置anaconda環(huán)境時(shí)找不到python.exe的兩種解決辦法,需要的朋友可以參考下2024-07-07python實(shí)現(xiàn)web應(yīng)用框架之增加響應(yīng)對象
這篇文章主要介紹了python利用web應(yīng)用框架如何增加響應(yīng)對象的,文中有相應(yīng)的代碼示例,對大家的學(xué)習(xí)或工作有一定的參考價(jià)值,需要的同學(xué)可以參考下2023-05-05Tensorflow2.1實(shí)現(xiàn)Fashion圖像分類示例詳解
這篇文章主要為大家介紹了Tensorflow2.1實(shí)現(xiàn)Fashion圖像分類示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-11-11Python2實(shí)現(xiàn)的LED大數(shù)字顯示效果示例
這篇文章主要介紹了Python2實(shí)現(xiàn)的LED大數(shù)字顯示效果,涉及Python的簡單交互與列表相關(guān)使用技巧,需要的朋友可以參考下2017-09-09pandas如何使用列表和字典創(chuàng)建?Series
這篇文章主要介紹了pandas如何使用列表和字典創(chuàng)建?Series,pandas 是基于NumPy的一種工具,該工具是為解決數(shù)據(jù)分析任務(wù)而創(chuàng)建的,下文我們就來看看文章是怎樣介紹pandas,需要的朋友也可以參考一下2021-12-12