阅读(1796) (0)

Python3 any() 函数 - 指示列表中的所有元素是否都为假

2023-04-20 14:29:02 更新

Python 内置函数 Python 内置函数


描述

​any() ​​函数用于判断一个列表中的所有元素是否为假(False)。

如果列表中的所有元素都为假(True或者可以转换为True),则返回False,否则返回True

注:元素除了 0、空、None、False 外都算 True。

为了便于理解,上述文本中使用了列表作为可迭代对象的替换。实际上这是片面的,​​any()​​函数接受的参数为可迭代的对象(iterable ),也就是说,以下这些类型都可以作为​any()​的参数:
1.list,tuple,dict、set、str
2.generator,带​yield​的generator function,统称为iterator。生成器可以使用​for​可以被​next​函数调用并返回下一个值。

函数等价于:

def any(iterable):
    for element in iterable:
        if element:
            return True
    return False
它与​all()​函数是一对功能相反的函数,可以简单的记为:​all()​全真才真,​any()​全假才假(刚好与与运算和或运算类似)

语法

以下是 ​any() ​方法的语法:

any(iterable)

参数

  • iterable --  可迭代的参数,包括.list,tuple,dict、set、str以及生成器生成的iterable对象。

返回值

如果iterable的所有元素都为​0​、​''​、​False​或者iterable为空,all(iterable)返回False,否则返回True;

注意:空元组、空列表,空字符串返回值为False,这里要特别注意。


实例

以下展示了使用​ any()​ 方法的实例:

print(any(['a', 'b', 'c', 'd']))  # 列表list,元素都不为空或0
# 返回 True
print(any(['a', 'b', '', 'd']))   # 列表list,存在一个为空的元素
# 返回False
print(any([0, "" , False,None]))         # 列表list,元素都为空或0或False或None
# 返回False
print(any(('a', 'b', 'c', 'd')))  # 元组tuple,元素都不为空或0
# 返回 True
print(any(('a', 'b', '', 'd')))   # 元组tuple,存在一个为空的元素
#返回 Ture
print(any((0, "" , False,None)))  # 元组tuple,元素都为空或0或False或None
# 返回 False
print(any("zijiebao001"))        # 字符串也是可迭代对象,可以作为any()的参数
# 返回 True
print(any('0'))            #字符串的0不算False
# 返回 True
print(any(''))                   # 空字符串会返回False     
# 返回 False
print(any([]))             # 空列表
# 返回 False
print(any(()))            # 空元组
# 返回 False

运行结果如下:

True
True
False
True
True
False
True
True
False
False
False

Python 内置函数 Python 内置函数