python布爾值
1. 什么是布爾值
但在Python語言中,布爾類型只有兩個值
True:表示真值
False:表示假值
請注意,首字母要大寫,不能是其它花式變型。
所有的計算結(jié)果,判斷表達(dá)式調(diào)用返回值是True或者False的過程都可以稱為布爾運算,例如比較運算。
布爾值通常用來判斷條件是否成立。
age = 16
if age >= 18:
print("你是個成年人")
else:
print("你還未成年")
在 Python Shell 的模式下,很容易看出表達(dá)式返回的是真值還是假值。
>>> True
True
>>> False
False
>>> 3 > 2
True
>>> 3 > 5
False
>>> 3 in [1,2,3]
True
>>> 3 == 9/3
True
2. 布爾類型的轉(zhuǎn)換
Python內(nèi)置的 bool() 函數(shù)可以用來測試一個表達(dá)式的布爾值結(jié)果。
>>> bool(1)
True
>>> bool(0)
False
>>> bool([])
False
>>> bool(())
False
>>> bool({})
False
>>> bool(-1)
True
>>> bool('')
False
>>> bool(None)
False
>>> bool("False")
True
>>> bool("True")
True
>>> bool(0.0)
False
>>> bool(1.0)
True
>>> bool(-0.0)
False
看完上面的例子,可以總結(jié)出
下面這些值經(jīng)過 bool 轉(zhuǎn)換后是False:
0、0.0、-0.0
None:這個后面會講到
空字符串、空列表、空元組、空字典
而這些會轉(zhuǎn)換成True:
-1、1或者其他非0數(shù)值
所有非空字符串,包括 "False"
所有非空字典、非空列表、非空集合,非空元組
3. 布爾運算
布爾類型可以進(jìn)行 and、or和 not運算。
and 運算是與運算,只有所有都為True,and運算的結(jié)果才是True:
>>> True and True
True
>>> True and False
False
>>> False and False
False
>>> 5 > 3 and 3 > 1
True
or運算是或運算,只要其中有一個為True,or運算結(jié)果就是True:
>>> True or True
True
>>> True or False
True
>>> False or False
False
>>> 5 > 3 or 1 > 3
True
not運算是非運算,它是單目運算符,把True變成False,F(xiàn)alse變成True:
>>> not True
False
>>> not False
True
>>> not 1 > 2
True
再開下腦洞,布爾類型還能做別的運算嗎?試試就知道了!
>>> True > False
True
>>> True < False
False
>>> True >=False
True
>>> True -1
0
>>> True + 1
2
>>> True *3
3
>>> False -1
-1
真的可以!比較運算,四則運算都沒有問題。并且在做四則運算的時候,明顯把True看做1,F(xiàn)alse看做0。往往是我們不知道的細(xì)節(jié),有時候給我們帶來巨大的困擾和疑惑。更多的運算種類支持,請大家自行測試。
4. 空值:None
空值不是布爾類型,嚴(yán)格的來說放在這里是不合適的,只不過和布爾關(guān)系比較緊密。
空值是Python里一個特殊的值,用None表示(首字母大寫)。None不能理解為 0,因為0是整數(shù)類型,而None是一個特殊的值。
None不是布爾類型,而是NoneType。
>>> bool(None)
False
>>> type(None)
審核編輯:符乾江
-
布爾
+關(guān)注
關(guān)注
0文章
3瀏覽量
7661 -
python
+關(guān)注
關(guān)注
58文章
4885瀏覽量
90304
發(fā)布評論請先 登錄
使用PYTHON進(jìn)行的跨平臺仿真
[VirtualLab] 使用Python運行VirtualLab Fusion光學(xué)仿真
[VirtualLab] 使用Python進(jìn)行跨平臺參數(shù)掃描
如何在 VisionFive 上使用 Python 包?
伊斯坦布爾機(jī)場攜手華為利用AI技術(shù)讓出行輕松自在
沒有專利的opencv-python 版本
條件的執(zhí)行語句
布爾表達(dá)式及范圍檢查
Python調(diào)用API教程
termux調(diào)試python猜數(shù)字游戲
termux如何搭建python游戲
python app不能運行怎么解決?
Texas Instruments SN74LVC02A/SN74LVC02A-Q1四通道雙輸入或非門數(shù)據(jù)手冊
python布爾值是什么
評論