Python進(jìn)階之路3.4.1布爾值和布爾變量

3.4.1 布爾值和布爾變量

在講條件語(yǔ)句之前,首先應(yīng)該了解一下布爾(boolean)類型。條件語(yǔ)句(if)需要為其制定布爾值或布爾類型的變量,才能根據(jù)條件判斷是否要執(zhí)行指定代碼塊中的語(yǔ)句。布爾值只有兩個(gè)值:True和False,可以將這兩個(gè)值翻譯成"真"和"假"或者"1"和"0"。

專注于為中小企業(yè)提供成都網(wǎng)站建設(shè)、做網(wǎng)站服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)馬尾免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了千余家企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過(guò)網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

現(xiàn)在已經(jīng)了解了布爾值是用來(lái)做什么的,但Python語(yǔ)言會(huì)將哪些值看作是布爾值呢?其實(shí)在Python語(yǔ)言中,每一種類型的值都可以被解釋成布爾類型的值。例如,下面的值都會(huì)被解釋成布爾值中的False。

None 0 "" () [] {}

這些值所涉及的數(shù)據(jù)類型有一些到現(xiàn)在為止并沒(méi)有講過(guò)(例如,[]表示長(zhǎng)度為0的列表),不過(guò)也不用擔(dān)心,繼續(xù)跟我學(xué)下去,在后面的章節(jié)中會(huì)詳細(xì)講解這些數(shù)據(jù)類型。

如果在條件語(yǔ)句中使用上面的這些值,那么條件語(yǔ)句中的條件都會(huì)被解釋成False,也就是說(shuō),條件代碼塊中的語(yǔ)句不會(huì)被執(zhí)行。

在Python語(yǔ)言底層,會(huì)將布爾值True看作1,將布爾值False看作0,盡管從表面上看,True和1、False和0是完全不同的兩個(gè)值,但實(shí)際上,它們是相同的??梢栽赑ython控制臺(tái)驗(yàn)證這一點(diǎn)。

>>> True == 1
True
>>> False == 0
True
>>> True + False + 20
21

很明顯,可以直接將True看成1,將False看成0,也可以直接將True和False當(dāng)成1和0用,所以True+False+20的計(jì)算結(jié)果是21。

另外,可以用bool函數(shù)將其他類型的值轉(zhuǎn)換為布爾類型的值。

>>> bool("")
False
>>> bool("Hello")
True
>>> bool([])
False
>>> bool([1,2,3])
True
>>> bool(20)
True
>>> bool('')
False

可以看到,在前面給出的幾個(gè)會(huì)被系統(tǒng)認(rèn)為是False的值,通過(guò)bool函數(shù)的轉(zhuǎn)換,會(huì)變成真正的布爾值。不過(guò)這些值是不能直接和布爾值比較的,例如,不能直接使用"[]==false",正確的做法是先用bool函數(shù)將其轉(zhuǎn)換為布爾值,然后在比較:

bool([]) == false

在前面的代碼中使用了"=="運(yùn)算符,這是邏輯運(yùn)算符,是二元運(yùn)算符,需要指定左右兩個(gè)操作數(shù)用于判斷兩個(gè)值是否相等,如果兩個(gè)操作數(shù)相等,運(yùn)算結(jié)果為True,否則為False。這個(gè)運(yùn)算符在后面的章節(jié)中會(huì)經(jīng)常用到,當(dāng)然,還有很多類似的運(yùn)算符,在講解條件語(yǔ)句時(shí)會(huì)一起介紹。

網(wǎng)頁(yè)題目:Python進(jìn)階之路3.4.1布爾值和布爾變量
URL地址:http://bm7419.com/article44/pcggee.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化、商城網(wǎng)站、品牌網(wǎng)站設(shè)計(jì)、建站公司、網(wǎng)站設(shè)計(jì)、移動(dòng)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)