Python函數(shù)any()和all()的用法及區(qū)別介紹
引子
平常的文本處理工作中,我經(jīng)常會遇到這么一種情況:用python判斷一個string是否包含一個list里的元素。
這時候使用python的內(nèi)置函數(shù)any()會非常的簡潔:
fruits = ['apple', 'orange', 'peach'] str = "I want some apples" if any(element in str for element in fruits): print "string contains some fruits."
any()
其實any函數(shù)非常簡單:判斷一個tuple或者list是否全為空,0,F(xiàn)alse。如果全為空,0,F(xiàn)alse,則返回False;如果不全為空,則返回True。
all()
all函數(shù)正好和any相反:判斷一個tuple或者list是否全為不為空,0,F(xiàn)alse。如果全不為空,則返回True;否則返回False。
這里需要注意的是,空tuple和空list的返回值是True
python中內(nèi)建函數(shù)all()和any()的區(qū)別
all(x) 是針對x對象的元素而言,如果all(x)參數(shù)x對象的所有元素不為0、”、False或者x為空對象,則返回True,否則返回False
如:
In [25]: all(['a', 'b', 'c', 'd']) #列表list,元素都不為空或0 Out[25]: True In [26]: all(['a', 'b', '', 'd']) #列表list,存在一個為空的元素 Out[26]: False In [27]: all([0, 1,2, 3]) #列表list,存在一個為0的元素 Out[27]: False In [28]: all(('a', 'b', 'c', 'd')) #元組tuple,元素都不為空或0 Out[28]: True In [29]: all(('a', 'b', '', 'd')) #元組tuple,存在一個為空的元素 Out[29]: False In [30]: all((0, 1,2, 3)) #元組tuple,存在一個為0的元素 Out[30]: False In [31]: all([]) # 空列表 Out[31]: True In [32]: all(()) # 空元組 Out[32]: True
any(x)是判斷x對象是否為空對象,如果都為空、0、false,則返回false,如果不都為空、0、false,則返回true
In [33]: any(['a', 'b', 'c', 'd']) #列表list,元素都不為空或0 Out[33]: True In [34]: any(['a', 'b', '', 'd']) #列表list,存在一個為空的元素 Out[34]: True In [35]: any((0,1)) #元組tuple,存在一個為空的元素 Out[35]: True In [36]: any((0,'')) #元組tuple,元素都為空 Out[36]: False In [37]: any(()) # 空元組 Out[37]: False In [38]: any([]) # 空列表 Out[38]: False
總結(jié)
以上所述是小編給大家介紹的Python函數(shù)any()和all()的用法及區(qū)別介紹 ,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
Python中使用Beautiful Soup庫的超詳細教程
這篇文章主要介紹了Python中使用Beautiful Soup庫的超詳細教程,示例代碼基于Python2.x版本,極力推薦!需要的朋友可以參考下2015-04-04Numpy截取指定范圍內(nèi)的數(shù)據(jù)方法
今天小編就為大家分享一篇Numpy截取指定范圍內(nèi)的數(shù)據(jù)方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-11-11