bool()

bool() 是 Python 的內(nèi)置函數(shù),用于將任意值轉(zhuǎn)換為布爾值(TrueFalse),其核心規(guī)則如下:

  1. 基本轉(zhuǎn)換邏輯
  • 假值(False):
    None, False, 數(shù)值零(0, 0.0, 0j), 空序列("", [], ()), 空映射({}
    bool(0)      False
    bool("")     False
    bool([])     False
    
  • 真值(True):
    除上述假值外的所有對(duì)象
    bool(3)      True(非零數(shù))
    bool(" ")    True(含空格的字符串)
    bool([None]) True(非空列表)
    
  1. 特殊對(duì)象處理
    | 對(duì)象類(lèi)型 | 返回值 | 說(shuō)明 |
    |----------------|--------|-----------------------|
    | 自定義類(lèi)實(shí)例 | True | 默認(rèn)始終為真 |
    | 實(shí)現(xiàn) __bool__ | 自定義 | 按該方法返回值 |
    | 實(shí)現(xiàn) __len__ | 自定義 | 若 __bool__ 未定義,按長(zhǎng)度非零判斷 |

  2. 實(shí)用示例

檢查數(shù)據(jù)有效性
data = []
if not bool(data): 
    print("數(shù)據(jù)為空")  輸出

條件過(guò)濾
values = [0, 3, "", "text"]
filtered = list(filter(bool, values))  結(jié)果: [3, "text"]
  1. 與邏輯操作結(jié)合
短路求值應(yīng)用
x = 0
result = x and bool(x)  返回 0(因 x 為假值)

注意:

  • 空字典 {} 和空集合 set() 均為假值
  • 布爾轉(zhuǎn)換是隱式條件判斷的基礎(chǔ)(如 if x: 等價(jià)于 if bool(x):
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容