bool()

bool() 是 Python 的内置函数,用于将任意值转换为布尔值(TrueFalse),其核心规则如下:

  1. 基本转换逻辑
  • 假值(False):
    None, False, 数值零(0, 0.0, 0j), 空序列("", [], ()), 空映射({}
    bool(0)      False
    bool("")     False
    bool([])     False
    
  • 真值(True):
    除上述假值外的所有对象
    bool(3)      True(非零数)
    bool(" ")    True(含空格的字符串)
    bool([None]) True(非空列表)
    
  1. 特殊对象处理
    | 对象类型 | 返回值 | 说明 |
    |----------------|--------|-----------------------|
    | 自定义类实例 | True | 默认始终为真 |
    | 实现 __bool__ | 自定义 | 按该方法返回值 |
    | 实现 __len__ | 自定义 | 若 __bool__ 未定义,按长度非零判断 |

  2. 实用示例

检查数据有效性
data = []
if not bool(data): 
    print("数据为空")  输出

条件过滤
values = [0, 3, "", "text"]
filtered = list(filter(bool, values))  结果: [3, "text"]
  1. 与逻辑操作结合
短路求值应用
x = 0
result = x and bool(x)  返回 0(因 x 为假值)

注意:

  • 空字典 {} 和空集合 set() 均为假值
  • 布尔转换是隐式条件判断的基础(如 if x: 等价于 if bool(x):
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容