python 內(nèi)置函數(shù)filter
python 內(nèi)置函數(shù)filter
class filter(object): """ filter(function or None, iterable) --> filter object Return an iterator yielding those items of iterable for which function(item) is true. If function is None, return the items that are true. """
filter(func,iterator)
func:自定義或匿名函數(shù)中所得值是布爾值,true將保留函數(shù)所取到的值,false則取反。
iterator:可迭代對象。
例:
過濾列表['text_test_text', 'test_text_1', 'text_test_2', '3_test_text', 'test_test']
只要含有text字符串及將其取出 or 取反。
s.rfind'text'+1
Python3中 rfind() 返回字符串最后一次出現(xiàn)的位置,如果沒有匹配項(xiàng)則返回-1。
數(shù)字中0是false,0以上的整數(shù)都是true,所以s.rfind'text'后會有+1,沒找到字符及-1+1=0.
# Filter
li = ['text_test_text', 'test_text_1', 'text_test_2', '3_test_text', 'test_test'] # 默認(rèn)保留函數(shù)所取到的值 print(list(filter(lambda s: s.rfind('text') + 1, li))) # 取反,下三個例子是一樣的 print(list(filter(lambda s: not s.rfind('text') + 1, li)))
# Noe 自定義函數(shù)
l1 = ['text_test_text', 'test_text_1', 'text_test_2', '3_test_text', 'test_test'] def distinguish(l): nl = [] for s in l: if s.rfind("text") + 1: nl.append(s) return nl print(distinguish(l1))
# Two 自定義高階函數(shù)
l2 = ['text_test_text', 'test_text_1', 'text_test_2', '3_test_text', 'test_test'] def f(s): return s.rfind('text') + 1 def distinguish(func, array): nl = [] for s in array: if func(s): nl.append(s) return nl print(distinguish(f, l2))
# Three 匿名函數(shù)
l3 = ['text_test_text', 'test_text_1', 'text_test_2', '3_test_text', 'test_test'] def distinguish(func, array): nl = [] for s in array: if func(s): nl.append(s) return nl print(distinguish(lambda s: s.rfind('text') + 1, l3))
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關(guān)文章
python實(shí)現(xiàn)k均值算法示例(k均值聚類算法)
這篇文章主要介紹了python實(shí)現(xiàn)k均值算法示例,簡單實(shí)現(xiàn)平面的點(diǎn)K均值分析,使用歐幾里得距離,并用pylab展示,需要的朋友可以參考下2014-03-03使用selenium+chromedriver+xpath爬取動態(tài)加載信息
這篇文章主要介紹了使用selenium+chromedriver+xpath爬取動態(tài)加載信息2022-02-02python PIL/cv2/base64相互轉(zhuǎn)換實(shí)例
今天小編就為大家分享一篇python PIL/cv2/base64相互轉(zhuǎn)換實(shí)例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-01-01Python集合基本概念與相關(guān)操作實(shí)例分析
這篇文章主要介紹了Python集合基本概念與相關(guān)操作,結(jié)合實(shí)例形式分析了Python集合的功能、原理、基本使用方法及操作注意事項(xiàng),需要的朋友可以參考下2019-10-10python數(shù)據(jù)結(jié)構(gòu)之鏈表詳解
這篇文章主要為大家詳細(xì)介紹了python數(shù)據(jù)結(jié)構(gòu)之鏈表的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-09-09Python通過fnmatch模塊實(shí)現(xiàn)文件名匹配
這篇文章主要介紹了Python通過fnmatch模塊實(shí)現(xiàn)文件名匹配,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-09-09