当前位置: 移动技术网 > IT编程>脚本编程>Python > Python函数any()和all()的用法及区别介绍

Python函数any()和all()的用法及区别介绍

2018年09月23日  | 移动技术网IT编程  | 我要评论

干湿分离,丘比特的圈套下载,022天津同城购物

引子

平常的文本处理工作中,我经常会遇到这么一种情况:用python判断一个string是否包含一个list里的元素。

这时候使用python的内置函数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函数非常简单:判断一个tuple或者list是否全为空,0,false。如果全为空,0,false,则返回false;如果不全为空,则返回true。

all()

all函数正好和any相反:判断一个tuple或者list是否全为不为空,0,false。如果全不为空,则返回true;否则返回false。

这里需要注意的是,空tuple和空list的返回值是true

python中内建函数all()和any()的区别

all(x) 是针对x对象的元素而言,如果all(x)参数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

总结

以上所述是小编给大家介绍的python函数any()和all()的用法及区别介绍 ,希望对大家有所帮助

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网