all()

Python all() 函数详解

all() 用于判断可迭代对象中是否所有元素均为真值,核心行为如下:

  1. 基本逻辑
  • 当可迭代对象所有元素为真(非零、非空、非False)时返回 True

  • 若存在任一假值元素或对象为空时返回 False

  • 等价实现:

    
    def all(iterable):
    
        for element in iterable:
    
            if not element:
    
                return False
    
        return True
    
    
  1. 典型用例

检测全为真值

print(all([1, "a", True]))      True

print(all([1, 0, "text"]))       False(存在0)

空迭代对象返回True

print(all([]))                   True

  1. 特殊场景处理

| 输入类型 | 返回值 | 说明 |

|-------------------------|---------|---------------------------|

| 含假值 [1, "", True] | False | 空字符串 "" 为假 |

| 嵌套对象 [[1], []] | False | 空列表 [] 为假 |

| 全真值 ["A", 5, [0]] | True | 非空列表 [0] 视为真值 |

  1. any() 对比

| 函数 | 全真返回 | 存在真值返回 | 空迭代返回 |

|---------|----------|--------------|------------|

| all() | True | False | True |

| any() | True | True | False |

  1. 实用技巧
  • 条件验证:检查多个条件同时成立

    
    conditions = [x > 0 for x in [3, 5, 7]]
    
    if all(conditions):
    
        print("所有数值均为正数")
    
    
  • 数据清洗:筛选有效数据集

    
    data = [{"name": "Alice", "age": 30}, {"name": "", "age": 25}]
    
    valid_data = [d for d in data if all(d.values())]  剔除含空值的项
    
    

注意:

  • 对生成器同样适用(如 all(x > 0 for x in [1, 2, -3]) 返回 False
  • 假值包含:False, 0, "", None, [], {}, ()
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容