• python基础python函数any()与all()的区别


    any()与all()函数的区别:

      any是任意,而all是全部。 

    版本:该函数适用于2.5以上版本,兼容python3.x版本。

     

    any(...)

        any(iterable) -> bool

        

        Return True if bool(x) is True for any x in the iterable.

        If the iterable is empty, return False.

     

    any(iterable)说明:参数iterable:可迭代对象;

    如果当iterable所有的值都是0、''或False时,那么结果为False,如果所有元素中有一个值非0、''或False,那么结果就为True

    函数等价于:

    1 def any(iterable):
    2 
    3    for element in iterable:
    4 
    5        if  element:
    6 
    7            return False
    8 
    9    return True

    示例:

     1 >>> any(['a', 'b', 'c', 'd'])  #列表list,元素都不为空或0
     2 True
     3  
     4 >>> any(['a', 'b', '', 'd'])  #列表list,存在一个为空的元素
     5 True
     6  
     7 >>> any([0, '', False])  #列表list,元素全为0,'',false
     8 False
     9  
    10 >>> any(('a', 'b', 'c', 'd'))  #元组tuple,元素都不为空或0
    11 True
    12  
    13 >>> any(('a', 'b', '', 'd'))  #元组tuple,存在一个为空的元素
    14 True
    15  
    16 >>> any((0, '', False))  #元组tuple,元素全为0,'',false
    17 False
    18   
    19 >>> any([]) # 空列表
    20 False
    21  
    22 >>> any(()) # 空元组
    23 False

    all(...)

        all(iterable) -> bool

        

        Return True if bool(x) is True for all values x in the iterable.

        If the iterable is empty, return True.

     

    如果iterable的所有元素不为0、''、False或者iterable为空,all(iterable)返回True,否则返回False;函数等价于:

    1 def all(iterable):
    2 
    3     for element in iterable:
    4         if not element:
    5             return False
    6     return True

    示例:

     1 >>> all(['a', 'b', 'c', 'd'])  #列表list,元素都不为空或0
     2 True
     3 >>> all(['a', 'b', '', 'd'])  #列表list,存在一个为空的元素
     4 False
     5 >>> all([0, 1,2, 3])  #列表list,存在一个为0的元素
     6 False
     7    
     8 >>> all(('a', 'b', 'c', 'd'))  #元组tuple,元素都不为空或0
     9 True
    10 >>> all(('a', 'b', '', 'd'))  #元组tuple,存在一个为空的元素
    11 False
    12 >>> all((0, 1,2, 3))  #元组tuple,存在一个为0的元素
    13 False
    14    
    15 >>> all([]) # 空列表
    16 True
    17 >>> all(()) # 空元组
    18 True

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

     

     
  • 相关阅读:
    Item02.多态 Polymorphism
    使用Singleton需要考虑内存释放
    Item08. 多级指针(Pointers to Pointers)
    Item01: 数据提取(Data Abstraction)
    Item 05. 引用(References Are Aliases, Not Pointers)
    华为3Com Quidway 2116SI
    DLink DES1226G 一款不错的中端交换机
    郁闷
    一些VLAN学习资料
    有个好心情才会有好的状态
  • 原文地址:https://www.cnblogs.com/nulige/p/6128816.html
Copyright © 2020-2023  润新知